如何初始化Vector?

时间:2016-01-12 15:17:17

标签: c++ stdvector

我使用下面的代码初始化一个向量,但是出现了错误。

vector<int> e;

for(int i=0;i<10;i+)
{
e[i] = 0;
}

2 个答案:

答案 0 :(得分:2)

由于BoBTFish已经说过你无法使用[]访问向量的元素,因为向量中没有任何内容。您有几种选择如何执行此操作。

一个。使用push_back代替“=”,这看起来像

vector<int> e;
for (i = 0; i < 10 ; i++)
  e.push_back(0); 

湾像这样初始化和清空矢量

vector<int> e(10);
for (i = 0; i < 10 ; i++)
  e[i] = 0;

℃。初始化一个大小为10的向量,用这个

填充0
vector<int> e(10,0);

答案 1 :(得分:1)

就足够了
std::vector<int> e( 10 );

如果你想要每个元素都等于零。

否则你可以写

std::vector<int> e( 10, value );

如果你有std::vector<T>类型的向量,那么声明

std::vector<T> v( n );

相当于

std::vector<T> v( n, T() );