C++深度解析 临时对象 --- 直接调用构造函数,手动去调用构造函数(22)
临时对象(直接调用构造函数。代码上手动去调用而非编译器自己调用构造函数)
直接调用构造函数将产生一个临时对象。
临时对象的生命周期只有一条语句的时间。
临时对象的作用域只在一条语句中。
临时对象是C++中值得警惕的灰色地带。
示例程序:(临时对象的引入,在构造函数中调用构造函数)
#include <stdio.h>
class Test
{
int mi;
public:
Test(int i)
{
mi = i;
}
//在构造函数中调用构造函数
Test()
{
//得到一个临时对象,只在这条语句有效,临时对象没有名字
//这个构造函数 等价为 空
Test(0);
}
void print()
{
printf("mi = %d\n", mi);
}
};
int main()