C++关于拷贝构造函数的程序题

#include<iostream>usingnamespacestd;classtest{private:inta;public:~test(){cout<<"cons... #include <iostream>
using namespace std;
class test
{
private:
int a;
public:
~test(){cout<<"constructor"<<endl;}
test(int a){cout<<a<<endl;}
test(const test&_test)
{
a=_test.a;
cout<<"Copy constructor"<<endl;
}
};
int main()
{
test A(3);
return 0;
}

这题运行结果是 3 destructor
test(const test&_test)这段应该是属于拷贝构造函数吧,关于拷贝构造函数一直不太明白应该怎么用,这题里貌似也没用上,应该在什么时候用呢??
还有个小问题,析构函数不是只能出现一次么,这题有两个,运行时候也通过了,但是结果显示的是第二个,那第一个析构函数是干什么用的??
展开
 我来答
未来需努力点缀
2012-09-12 · TA获得超过4680个赞
知道大有可为答主
回答量:850
采纳率:50%
帮助的人:637万
展开全部
你好
楼主请见下面的注释 给你详细解答了
(如果还有问题 加q2458483878 我们细聊)

#include <iostream>
using namespace std;
class test
{
private:
int a;
public:
test(int a){cout<<a<<endl;} //这是构造函数
test(const test&_test) //这是复制构造函数 也称为拷贝构造函数
{
a=_test.a;
cout<<"Copy constructor"<<endl;
}
~test(){cout<<"constructor"<<endl;}//这是析构函数 本程序只有这一个析构函数
};
int main()
{
test A(3);
test B=A;//这是可以调用拷贝构造函数
return 0;
}

希望能帮助你哈
奇崛又轻盈丶虎鲸7
2012-09-13
知道答主
回答量:21
采纳率:0%
帮助的人:8.7万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式