蛋蛋包子 发表于 2013-7-20 04:49 
超☆感☆謝大神
不過關於第五個,我是測試出來是那幾個constructor。
之後我查了查書,然後大概只有一個c ...
不拷贝直接assign我能理解,奇怪的是前面有个dtor
在这个dtor前面总共创建了3个对象,thing,another和foo参数表种的anobj
这个dtor显然不能是thing和another的,这两个还在scope中
这么一来只能是anobj的了,但是如果anobj被析构了下面的assign怎么进行呢
编译器直接优化成 another=thing好像是唯一的解释了,但是后面的dtor是怎么回事情,assignment不该产生临时对象啊
PS 你用的是VC++ ?