【发布时间】:2017-11-24 21:42:29
【问题描述】:
下面是sn-p,我想将first变量指向second变量而不复制向量:
#include <iostream>
#include <vector>
std::vector<int> second (4,100);
void modify(std::vector<int>* i) {
i = &second;
}
int main ()
{
std::vector<int> first; // empty vector of ints
modify(&first);
for (std::vector<int>::iterator it = first.begin(); it != first.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
return 0;
}
输出为空,而我预计输出为100 100 100 100。
有人知道为什么我不能像这样修改矢量吗?
【问题讨论】:
-
你能以同样的方式“修改”
int吗?也许它与向量无关?
标签: c++ pointers reference stl