C++/CLI 口水战,多位大师参与

原创 2006年03月28日 13:15:00

原文地址

这个口水战中,Herb Sutter, Andrei Alexandrescu, Walter Bright, David Abrahams, Francis Glassborrow, P.J. Plauger等C++大牛都发表了长篇大论。值得细看。有空我将要把我的感想贴上来。
PS:这帮人真是能说啊,看死了我了。另,我不是女的。

感想1:updated 2006-4-4
Herb Sutter在一个回帖中举了一个例子说明GC的必要性
 T *p1 = new T;
  ...
  T *p2 = p1;
  ...
  delete p1; // 1: run ~T and put the storage back on the free list
  ...
  U *p3 = new U; // 2: could reuse the same storage
  // here, the void* representations of p1 and p3 might be the same
  ...
  p2->Foo(); // 3: oops, type safety violation
这个例子中出现的访问已经释放的对象的情况并不少见。如果p3重新被分配在p1的空间,那么很可能以后的对p2的访问不会出现任何access violation错误,但是事实上那里已经不是你认为应该是的东西了。这类型的bug在后期的调试中会带来很大问题,因为编译器和调试器并不能帮你找出问题,只能靠自己一行一行的看。
Herb也举出了一些类似的问题,包括accessing still-existing but destroyed objects (析构已经调用,但是空间未释放), accessing freed memory where an object used to be, and accessing a new object with a pointer to an old object that used to be in the same location。他认为解决这类型问题的唯一途径就是GC。

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C++从键盘输入多位数数组进行排序

写了一个可以从键盘输入多位数数组进行排序的程序,发现了几个问题,这里记录下来最开始程序是这样的#include using namespace std; void main() { ...

c++多位整数加法

Webpack中文社区正式成立-多位前端大牛参与解答开发难题

第一次转载文章 因为确实是个好消息,我觉得有必要推广一下╰( ̄▽ ̄)╭ 自己加了点东西2017年1月18日,webpack 2.2正式版本发布!webpack2新文档传送门 同一天,webpac...

STK X教程—C++/CLI源代码

  • 2013-03-26 21:48
  • 134KB
  • 下载

首日报名爆满超300 向C++大师Lippman提问征集

CSDN和《程序员》杂志联合组织的线下活动TUP对话大师系列至今已成功举办了六期,分别邀请到了 UML之父Ivar Jacobson, jQuery之父John Resig,微软技术大师Jef...

C++CLI 编程pdf

  • 2012-08-08 17:19
  • 25.05MB
  • 下载

Manning.C++CLI.in.Action.Apr.2007

  • 2013-08-30 15:44
  • 17.83MB
  • 下载

C++CLI的简介及学习

C++ /CLIの紹介と勉強   目录 什么是C++ /CLI 学习C++/CLI 怎样将C++/CLI映射到CTS CLI的细节标准 存在的问题 附加功能 如何看待 C++/CLI...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)