假定CSomething是一个类,执行下面这些语句之后,内存里创建了____个CSomething对象。
2024-10-13 06:30:58
CSomething a();
CSomething b(2);
CSomething c[3];
CSomething &ra = b;
CSomething d=b;
CSomething *pA = c;
CSomething *p =
new
CSomething(4);
CSomething a();// 没有创建对象,这里不是使用默认构造函数,而是定义了一个函数,在C++ Primer393页中有说明。
CSomething b(2);//使用一个参数的构造函数,创建了一个对象。
CSomething c[3];//使用无参构造函数,创建了3个对象。
CSomething &ra=b;//ra引用b,没有创建新对象。
CSomething d=b;//使用拷贝构造函数,创建了一个新的对象d。
CSomething *pA = c;//创建指针,指向对象c,没有构造新对象。
CSomething *p = new CSomething(4);//新建一个对象。
//综上,一共创建了6个对象。个人理解,如有错误,还请大神指出。
CSomething a(); 只是个函数声明
CSomething b(2); +1
CSomething c[3]; +3,对象数组
CSomething &ra = b; 引用,没有新构造
CSomething d=b; +1,调用拷贝构造函数
CSomething *pA = c; 只是给指针赋值
CSomething *p = new CSomething(4); +1,构造并给指针赋值
总共6个
CSomething a();
// 定义一个函数,参数为空,返回值为CSomething对象, 类似int func();
CSomething a;
// 定义对象a,使用默认构造函数CSomething::CSomething()
CSomething a(
0
);
// 定义对象a,使用构造函数CSomething::CSomething(int)
最新文章
- [转发] 理解 oauth 2.0
- C# 中通过API实现的打印类
- MatrixTurn源码阅读
- 如何在Azure上创建和部署云服务
- Jquery EasyUI中treegrid的中右键菜单和一般按钮同时绑定事件时的怪异事件
- 【快速选择算法与nth_element函数】【续UVA11300 】
- Jira 6.0.5环境搭建
- css table之合并单元格
- 201772020113 李清华《面向对象程序设计(java)》第18周学习总结
- web前端性能优化总结一
- python 遇到的小坑
- python实现模拟登录
- Java并发编程:Java Thread方法join的简单总结
- Kconfig详解
- python中web应用与mysql数据库交互
- Putty+Xming实现在Windows客户端显示Linux服务器端的图形化程序
- 团体程序设计天梯赛-练习集 L1-031. 到底是不是太胖了
- pandas安装及使用
- [转] 从数据库中读取图片并导入Excel文件,C#方式
- 并发模型(二)——Master-Worker模式
热门文章
- C#获取文件/字节数组MD5值方法
- Effective Java 读书笔记之八 异常
- OOP复习笔记
- IntelliJ中的main函数和System.out.println()快捷键
- HTTP协议与HTTPS协议区别
- elasticsearch 口水篇(5)es分布式集群初探
- 模式串匹配,kmp
- vb.net 控件(包括字体)随窗体按比例缩放
- url中出现井号(";#";)的问题
- How to keep Environment Variables when Using SUDO