X++ 学习 (三)

实例化,构造函数,析构函数

1.实例化

Point myPoint;
myPoint 
=   new  Point();

对象的实例成员,必须通过访问器访问,不能直接通过变量名直接访问。

myPoint.x = 10.0; //错误的

2.构造函数

class  Point
{
  
int  x;  //  instance variables
   int  y;  //  defined in classDeclaration
}
void   new (real a = 10.0 , real b = 10.0 )
  // Constructor to initialize to default value
  x  =  a;
  y 
=  b;
}

用new做为构造函数,该函数可以有参数,但不能有返回类型.这个把C++之父天才的主意给打破了,哈哈。

3.析构函数

//  From any method in a class
{
  . . .
  
if (Condition)
  
this .Finalize();
  . . .
}

可以在Finalize()中进行对象的清理工作,该方法不会被系统隐式调用,必须在程序中显式调用.当调用Finalize()的时候,MorphX会把这个对象从内存中清理掉。Finlize()还可以放一些其他的清理的代码,比如如果类调用了Dll模块,可以在这里将其释放。
感觉X++的析构函数跟C++的析构函数是一回事,那么X++里有没有类似C#里的Dispose那?貌似没有.自己写吧。

4.subClasses

 

class  Point
{
  real x; 
/*  instance variable  */
  real y; 
/*  instance variable  */
  New(real _x, real _y)
  {
    
//  constructor to initialize x and y
    x  =  _x;
    y 
=  _y;
  }
}

class  ThreePoint extends Point
{
  real z; 
// The z coordinate of the point
  New(real _x, real _y, real _z)
  {
    super(_x, _y); 
//  initialize the coordinates
    z  =  _z;
  }
}

 

转载于:https://www.cnblogs.com/Kurodo/archive/2011/07/13/2105481.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值