std::vector<int&>
时间: 2023-08-21 17:09:39 浏览: 167
std::vector类模板
这段代码是不合法的。在 C++ 中,模板参数不能是引用类型。因此,不能直接使用 `std::vector<int&>` 来定义一个存储整数引用的向量。如果你想要存储整数引用,可以考虑使用指针或者使用 `std::reference_wrapper` 类型来包装引用。以下是两种可能的方法:
1. 使用指针:
```cpp
std::vector<int*> vec; // 存储整数指针
int num = 42;
vec.push_back(&num); // 添加指向整数的指针
```
2. 使用 `std::reference_wrapper`:
```cpp
#include <functional> // 引入 std::reference_wrapper
std::vector<std::reference_wrapper<int>> vec; // 存储整数引用包装器
int num = 42;
vec.push_back(std::ref(num)); // 添加整数引用的包装器
```
希望能帮到你!如果有更多问题,请随时提问。
阅读全文