如何通过vector :: pointer将向量中的数据push_back? [英] How can I push_back data in a vector via a vector::pointer?
本文介绍了如何通过vector :: pointer将向量中的数据push_back?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用vector :: pointer以便将数据推入其中.
I 'd like to use a vector::pointer so as to push_back data in it..
int num;
vector<int> v;
vector<int>::pointer ptr;
ptr = &v[0];
ptr->push_back(num); // fail
ptr.push_back(num); // fail
ptr.push_back(&num); // fail
*ptr.push_back(num); // fail
似乎没有任何作用..任何想法都将受到赞赏..
nothing appears to work.. any ideas would be appreciated..
推荐答案
您不能.您需要使用原始的矢量对象.
You can't. You need to use the original vector object.
如果您想要一个指向矢量的指针,则可以执行以下操作:
If you'd like to have a pointer to a vector, you can do the following:
vector<int> v;
vector<int> *pointer = &v;
v.push_back(4);
pointer->push_back(3);
作为注释,代码中vector<int>::pointer
的类型应为int *
.
As a comment, the type of vector<int>::pointer
in your code should be int *
.
这篇关于如何通过vector :: pointer将向量中的数据push_back?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文