锅瓢 2021-06-23 22:56 采纳率: 100%
浏览 37
已采纳

关于QString 隐式共享的疑问

我进行拷贝的时候没有警告,说明地址是不等的,但是为什么我调试出来的 几个地址确是相同的呢,不应该只有里面的数据块地址相同吗?我用qt creator试了,也是相同的

  • 写回答

1条回答 默认 最新

  • 暖晴的天 2021-06-23 23:06
    关注

    因为你的 st 和 str2 实例化的时候调用的是拷贝构造函数,默认的拷贝构造函数是浅拷贝,只会生成引用不会开辟新的空间,使用的还是原来的地址,只是变量名称不一样罢了,这里st和str2可以理解为str的别名,建议了解一下深拷贝和浅拷贝。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?