繁体   English   中英

访问c ++的矢量指针的元素

[英]Access c++'s vector pointer's elements

如何从向量指针访问向量的元素? 在以下代码中,应使用什么代替cout << v [0]; 打印10个?

vector <int>* v; // the function parameter
v->push_back (10);
cout << v [0];

如果您实际上有一个指向矢量的指针,则正确的方法是这样的:

cout << (*v)[0];

但是您没有指向向量的指针。 您有一个未初始化的指针,并且对push_back的调用是未定义的行为,就像试图打印此不存在的向量的元素一样。

您可以使用v->at(0)v->operator[](0)

首先,您不应该使用指向矢量的指针。 在堆栈上构造向量更合理:

std::vector<int> v;
v.push_back(10);
std::cout << v[0];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM