- 用类的一个对象初始化同类的另一个对象时。
- 某函数的返回值是类的对象,调用该函数时。
- 某函数的形参是类的对象,调用该函数时。
※注意区分“初始化”和“赋值”:
ClassName c2 = c1; (初始化语句)
ClassName c1 , c2;
c1.x=5;
c2=c1 (赋值语句)
综上:赋值操作是在两个已经存在的对象间进行的,而初始化是要创建一个新的对象,并且其初值来源于另一个已存在的对象。
- 用类的一个对象初始化同类的另一个对象时。
- 某函数的返回值是类的对象,调用该函数时。
- 某函数的形参是类的对象,调用该函数时。
※注意区分“初始化”和“赋值”:
ClassName c2 = c1; (初始化语句)
ClassName c1 , c2;
c1.x=5;
c2=c1 (赋值语句)
综上:赋值操作是在两个已经存在的对象间进行的,而初始化是要创建一个新的对象,并且其初值来源于另一个已存在的对象。