C++函数返回值为对象时如何构造析构函数
来源:爱站网时间:2021-04-29编辑:网友分享
如果在C++函数返回值为对象时有没有必要调用构造函数呢?下面爱站技术频道的小编将为你分享有关C++函数返回值为对象时,构造析构函数的注释和输出内容,有需要的朋友可以参考下。
看如下代码:
#include
class TestConstructor
{
public:
TestConstructor()
{
std::cout }
~TestConstructor()
{
std::cout }
TestConstructor(const TestConstructor& testObj)
{
std::cout }
TestConstructor& operator = (const TestConstructor& testObj)
{
std::cout return *this;
}
};
TestConstructor testFunc()
{
TestConstructor testInFunc; //3、调用TestConstructor() 生成对象testInFunc
return testInFunc; //4、调用TestConstructor(const TestConstructor&) 生成临时对象
//5、调用析构函数,析构对象testInFunc
}
int main()
{
TestConstructor test; //1、调用TestConstructor() 生成对象test
test = testFunc(); //2、调用testFunc() //6、调用等号把临时对象复制给对象test //7、调用析构函数,析构临时对象
return 0; //8、调用析构函数,析构对象test
}
看输出:
文中以及详细列出了有关C++函数返回值为对象时,构造析构函数的所有执行细节,包括注释和输出的内容都一一列出,当遇到这类问题时候就可以参照上文来解决了。
上一篇:C++中遍历目录下文件的简单操作