假定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; 只是语法形式的不同,意义是一样的,都是定义加初始化,都调用拷贝构造函数。
下一个并非调用赋值运算符。
相关文章推荐
- 黑马程序员——C语言中的源程序
- CentOS7.1下生产环境Keepalived+Nginx配置
- Android 实现个性的ViewPager切换动画 实战PageTransformer(兼容Android3.0以下)
- sencha touch 学习笔记- 安装与环境
- 动态查找树比较——BST、AVL、RBT、B、B+
- C Intro - Two unsigned int subtract
- 使用 Eclipse 插件提高代码质量,让开发自动化。
- Struts2_2_第一Struts2应用
- 简洁的文字加图片应用:“深蓝”,源代码分享
- YII修改Exception返回值为任意格式
- Android训练课程(Android Training) - 高效的显示图片
- 计算机网络组网与配置技术—— 读书笔记5、计算机网络常用命令
- POSIX多线程程序设计(第1章:概述)
- JavaMail发送邮件
- Java笔记——JavaMail发送邮件
- Android版本更新不成功原因分析
- mybatis中小于号的用法
- POJ 1426 Find The Multiple
- 关于android应用程序签名的一些事儿
- Leetcode 58 Length of Last Word 难度:0