相关文章  
  • 浅谈如何利用BartPE创建PE工具盘
  • Windows Mobile 2003 Second Edition 中 ActiveSync 编程模型的增强功能
  • 在完成所有绑定后仍然有许多要进行的操作
  • 在你的企业中管理Windows和应用程序
  • 动态加载用户控件的组件
  • 小心GDI+资源泄漏 -- 猜想 测试 应对全过程
  • 浅谈 C# 中的代码协同 (Coroutine) 执行支持
  • 在 C# 中处理结构内的数组源代码分析
  • 谈 WinDbg 之 InternalCall 的使用与实现
  • 谈 WinDbg 之 AppDomain 的创建过程
  •   推荐  
      科普之友首页   专利     科普      动物      植物        天文   考古   前沿科技
     您现在的位置在:  首页 >>文献 >>培训

    Visual Studio 2005中C++的变化4

    对象,你可以调用dispose()函数,虽然C#为它提供了的有效的结构,但是它仍然不象堆栈那样简单。
      
      在新一代的语言(以前是C++/CLI),你在哪里建立对象不依赖于你建立对象的种类,你可以堆栈中管理对象,它有确定的解析,但它越界时将被清除,如果你愿意你可以在管理堆里建立对象。
      
      这种变化带来其它的结果,其中最深远的是你可以把不同的对象放在摸板中或者可以把它看成其它类的成员变量,你可以得到完整的C++生存时间周期,而不是仅仅是把它分配到相应的堆,然后等碎片收集来处理它。
      
      解析和定稿
      当你为其它语言写了碎片收集对象是,你是否为它写了解析函数?当你使用C++,你可以在堆栈构造对象,解析函数将运行当它越界时,什么事情会发生当其他C#或VB程序调用这个对象,运行时仅从简单的方式去处理,它是用dispose()来解析,任何一个C++/CLI对象都有一个可以任意调用的解析函数。
      
      假如你在C#或VB中有dispose()的类,你可能已经写了一个定论,C++/CLI也有简便的语法为定论,就象Foo的解析是~Foo,Foo的定论是!Foo(~是比特的not,!是逻辑的not,它们都是提醒是和构造函数对立的),
      
      Finalizer将运行当在管理堆中建立而不被调用,确信它所

    页码:[1] [2] [3] [4] [5] [6] [7]4页、共7页

         

          设为首页       |       加入收藏       |       广告服务       |       友情链接       |       版权申明      

    Copyriht 2007 - 2008 ©  科普之友 All right reserved