临时对象的产生:
1. 用构造函数作为隐式类型转换函数时。
2. 建立一个没有名字的对象时。
直接写下代码 CTempObj();
输出:init obj
exit obj;
不单调用了构造函数,还调用了析构函数.
既然是对象也可以这样使用:CTempObj().Fun();
不过这样使用可要小心了:
(new CTempObj())->Fun();
这个new CTempObj()可不是临时对象,他还没执行析构呢!
3. 函数返回一个对象值时。
再看看一些注意事项:
STL中的一些操作可能要创建临时对象.
例如+ 这个运算符