学网站前端,衡水微信网站建设,传统小型企业做网站的好处,软件项目管理案例教程第四版1.问题现象 本来func函数返回p1#xff0c;实际上p1会先拷贝一份传递给test函数里面的p,这个时候会执行拷贝构造函数#xff0c;但是实际上的输出并没有#xff1b;
而且执行拷贝构造函数的时候#xff0c;因为生成p1的副本#xff0c;所以我们打印的地址应该不相同…1.问题现象 本来func函数返回p1实际上p1会先拷贝一份传递给test函数里面的p,这个时候会执行拷贝构造函数但是实际上的输出并没有
而且执行拷贝构造函数的时候因为生成p1的副本所以我们打印的地址应该不相同但是事实是相同的地址
实际上之所以出现这样的结果是因为编译器做了优化如果我们想要看到拷贝构造函数的执行想让其打印不同的地址地址本来就不应该相同只不过这里的编译器优化了按照底层地址不应该相同应该执行拷贝构造函数
2.解决方案
1我们按照下面的步骤打开属性看一下序号5的优化是否已经禁止使用如果不是进行设置使其禁止使用 2如果还是解决不了问题在优化下面找到命令行的设置在命令行的其他选项加上途中的代码/Zc:nrvo-就可以了 3打印输出就可以看到拷贝函数的执行以及不同的地址了。