void test1(const Data& data) {
 } 
 Data getData() { 
     Data data; return data; 
 } 
 int main() { 
     const Data& data = getData(); 
     test1(data); 
     return 0; 
 }在visual studio 2022的版本上测试,这段代码'(也就是视频中的代码)并不能阻止拷贝。 不知道是不是我写错了,有谁知道的吗
 我这样就没有拷贝操作啊
我这样就没有拷贝操作啊
你的意思是哪里发生了拷贝?是创建引用时给返回的对象建立了拷贝吗还是说test1()函数对引用进行调用时发生了拷贝?都不应该啊。建立拷贝就犹如建立指针,怎么会发生拷贝呢?只会让引用对象将地址保存下来且让返回对象生命周期延长,而调用函数调用指针的话就更不会发生拷贝了吧