第一种:用对象1 初始化 对象2 第二种:用对象1 初始化 对象2--括号法 注意:初始化操作 和 等号操作 是两个不同的概念 第三种:形参是一个元素,函数调用,会执行实参t7变量初始化形参obj变量 第四种:匿名对象的去和留 关键点:如果接匿名对象
结论1:函数的返回值是一个元素对象(复杂类型的),
返回的是一个新的匿名对象,所以会调用此对象类的copy构造函数
结论2:有关匿名对象的去和留
如果用匿名对象 初始化 另外一个同类型的对象 匿名对象 转成有名对象
如果用匿名对象 赋值(=)给 另外一个同类型的对象 匿名对象 被析构
1、如果用匿名对象 初始化 另外一个同类型的对象 匿名对象 转成有名对象 2、如果用匿名对象 赋值(=)给 另外一个同类型的对象 匿名对象 被析构#include#include #include #include using namespace std; class Test1{ public: //无参构造函数 Test1() { this->a = 0; this->b = 0; cout<<"无参构造函数"< a = a; this->b = b; cout<<"有参构造函数"< a = a; this->b = 0; cout<<"一个参数的有参构造函数"< a = obj.a +100; this->b = obj.b +100; } ~Test1() { cout<<"我是析构函数,被执行了"< a< b<



