c++ - 为什么我不能使用引用类型作为容器类型的值类型?

标签 c++ stl

例如,std::vector<int&> vec_int;这在 C++ 中似乎是无效的。为什么这是无效的?

最佳答案

STL 容器需要能够使用默认构造函数构造对象。你不能用引用来做到这一点。引用保证有效,因此必须始终使用赋值对其进行初始化。

您需要改用指针。

关于c++ - 为什么我不能使用引用类型作为容器类型的值类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3957916/

相关文章:

c++ - 提供良好的散列函数

C++:将 POD 添加到 std::vector<char> 中的下一个位置

c++矩阵乘法二维数组比一维更快

c++ - std::string 赋值时出现段错误

c++ - gdb:重置变量时中断

c++ - for-scope 内的多变量声明和初始化

c++ - 如何向 GetFileName 添加扩展名?

c++ - 是否允许 STL 谓词使用其参数的地址?

c++ - 使用 std::unique_ptr 的 std::unordered_set

c++ - 什么是 multimap::emplace() 和 move()?