- 博客(1)
- 收藏
- 关注
原创 c++通过函数返回值调用拷贝构造函数
c++中返回变量值的方式有两种,一种是非引用的方式返回,过程中会产生临时变量,将要返回的值先赋给临时变量,当临时变量完成调用处的赋值操作后,自动销毁。当通过函数返回值当作构造新对象的参数时,只能通过第二种方式,第一种由于返回的并不是对象C的本体,中间变量生存期短,不允许传入拷贝构造函数中起别名。第一种方式所产生的临时变量,在执行玩A=getperson()后自动消失,该代码调用两次构造函数,一次默认构造函数,一次拷贝构造函数。此时生成 对象A 只调用一次拷贝构造函数。修改代码通过引用的方式返回对象 C。
2022-12-20 19:07:34 835 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人