- 博客(3)
- 收藏
- 关注
原创 2021-05-25
C++赋值运算符重载直接返回对象而不是引用会发生什么。 直接返回对象时,会创建一个临时对象,并调用构造函数与析构函数。如果此时没有相应的的深拷贝构造函数,那么临时对象被析构将会造成目标对象对象也被析构。 执行过程: 1 释放对象原来的堆资源 2 重新申请堆空间 3 拷贝源的值到对象的堆空间的值 4 创建临时对象(调用临时对象拷贝构造函数),将临时对象返回 5. 临时对象结束,调用临时对象析构函数,释放临时对象堆内存 注意:如果第4步,我们没有定义拷贝构造函数,也就是没有进行深拷贝。那么在进行第5步释放临时对
2021-05-25 16:57:26 58
原创 2021-03-28
dev分文件时报错collect2.exe [Error] ld returned 1 exit status的解决办法之一 关于这个错误在网上可以找到许多的文章,但都没有解决我的问题,今天突然灵机一动发现了问题所在。 原因是除了这个错误外,还有提示 multiple definition of `SUM’,而SUM是我定义的一个全局变量,且是在头文件中定义的…说到这大家应该明白了,就是头文件中定义了全局变量,然后其他文件包含了头文件,就等于多次定义了全局变量,所以才会有上面的提示。 所以解决办法就是,千万
2021-03-28 23:08:28 67
原创 字符串数组表示法与指针表示法的区别
字符串数组表示法与指针表示法的区别 题目:已知一个不透明的布袋里装有红、蓝、黄、绿、紫同样大小的圆球各一个,现从中一次抓出两个,问可能抓到的是什么颜色的球? 提问1:以下是2种解法,请分析2种算法的存储结构差别在哪里? 提问2:如果对颜色再次进行排序,哪种存储方法,排序效率快,说明原因。 提问3:解法3采用动态分配内存,比解法2的存储方法好在哪里? //解法1 #include<stdio.h>int main(void) { char color[5][10] = {"red",
2021-03-16 18:14:36 513 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人