您的位置:首页 > 其它

假定CSomething 是一个类,执行下面这些语句之后,内存中创建了多少个CSomething 对象。

2015-08-25 16:49 411 查看
CSomething a();//只是定义一个方法,方法返回一个CSomething对象
CSomething b;//增加1个对象
CSomething c[3];//对象数组,增加3个对象
CSomething &ra=b;//引用不增加对象
CSomething d=b;//调用拷贝构造函数,增加1个对象
CSomething *pA=c;//地址赋值,不增加对象
CSomething *p=new CSomething;//在堆上构造一个对象,增加1个对象

所以最后一共有: 1+3+1+1 = 6个对象。


注:

在C++语言里,

String s2(s1);

String s3 = s1; 只是语法形式的不同,意义是一样的,都是定义加初始化,都调用拷贝构造函数。

下一个并非调用赋值运算符。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: