c++ - 将返回值从函数存储到 const ref
问题描述
函数 GetVec 返回 std::vector。然后我将返回的值存储到 const ref 中。存储在 const ref 中的返回值是否在下一行被销毁。我的印象是它不会。
#include <vector>
#include <iostream>
std::vector<int> GetVec(){
std::vector<int> vec;
vec.push_back(1);
vec.push_back(2);
vec.push_back(3);
return vec;
}
void print(const std::vector<int>& arg){
for(const auto& id : arg){
std::cout <<id << ",";
}
std::cout << std::endl;
}
int main(){
const std::vector<int>& ret_val = GetVec();
// is content of ret_val undefined here?
print(ret_val);
}
输出 :
1,2,3,
解决方案
推荐阅读
- angular - 我收到错误 TS2339:任何类型 [] 上不存在属性“总计”
- html - 绝对位置 div 垂直间隔不均匀
- javascript - 几个数组清空
- javascript - 面临向对象 JS 添加属性的问题
- html - 包裹图像的 Flexbox 锚标签具有巨大的宽度
- javascript - React-router v4,URL更改但组件不呈现
- javascript - 无渲染组件中的 Vue 绑定引用
- sql - 同时从两个不同的程序插入同一个数据库表
- javascript - 如何在javascript,Angular中获取视频文件的二进制数据
- mysql - MySQL比较不同的值以防万一