C ++矢量元素计数

时间:2011-01-19 22:39:32

标签: c++ translation primes

5 个答案:

答案 0 :(得分:5)

a.size()

我建议使用某种参考资料,例如: http://cplusplus.com/reference/stl/vector/

答案 1 :(得分:4)

回答您的直接问题:

a.size();  // use size as a function

但是您的代码还有其他一些问题:

vector<int> a;
a[1]=2;

通常,您需要事先设置a的大小,因为C ++必须为其分配空间。您可以使用push_back(),这将根据需要逐步添加空间。

此外,C ++数组从0开始计数:

for (int ii=1;ii<=#a;ii++) {

这应该是

ii = 0

由于数组从0开始,它们以size() - 1结束,而不是size()

答案 2 :(得分:2)

答案 3 :(得分:1)

答案 4 :(得分:1)

 a[#a+1]=i;

更改为使用size()变为:

 a[ a.size() + 1 ] = i;

这在语法上是正确的,但保证错误。它应该是:

 a.push_back(i);

阅读Oli引用的API。