科技时代新浪首页 > 科技时代 > 软件 > 正文

体验Visual Studio 2005中C++语言(4)


http://www.sina.com.cn 2005年03月10日 09:18 天极yesky

  文/刘涛

  例如:

ref class R
{
 private:
  int m_a;
 public:
  R(int a): m_a(a) {}
};


  你可能认为"ref"是C++/CLI中的一个新关键词,但实际上它不是,"Ref class"是一个关键词,其他的一些类似关键词是:"value class",""interface class"和"enum class"。因为以前几乎写的每一个C++程序都含有一个叫"Value"的变量,我非常高兴它没有变成一个关键词。

  一个ref class 是一个托管类,一个生存在托管堆上并由垃圾收集器管理的类。正如我先前说的,你可以在栈上创建实例,编译器将通过一个隐藏的灵巧的指针来管理该对象。

  五、属性

  C++的属性变化非常大,因为我在文章的开篇讲述了托管C++中属性的尴尬,现在就让我们以简洁的C++/CLI版本来结束吧。

ref class R
{
 private:
  int m_Size;
 public:
  property int Size
  {
   int get() { return m_Size; }
   void set(int val){m_Size = val;}
  }
};
R r;
r.Size = 42;


  属性是否是关键词,从某种意义上可以这么说,它是一个定位型的关键词,所以你可以毫无冲突地将一个变量或函数称为属性,就象上面的代码那样,它只是在类的定义中有特殊的含义。现在的C++/CLI语言支持将属性定义为一个单独的单元,相对与以往的方式,我更喜欢新的方式,相信你也是这样。

[上一页]  [1]  [2]  [3]  [4]


  点击此处查询全部C++新闻

评论】【应用软件】【推荐】【 】【打印】【下载点点通】【关闭
 

 
新 闻 查 询
关键词



热 点 专 题
第77届奥斯卡盛典
苏丹红一号食品风波
3.15 消费者权益日
英语四六级考试改革
骑士号帆船欧亚航海
CBA全明星赛阵容公布
购房还贷计算器汇总
解读商品房销售合同
林白:妇女闲聊录

 
 



科技时代意见反馈留言板 电话:010-82628888-5828   欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2005 SINA Inc. All Rights Reserved

版权所有 新浪网