所以,我有以下内容:
std::vector< std::vector <int> > fog;
我很天真地初始化它,比如:
for(int i=0; i<A_NUMBER; i++)
{
std::vector <int> fogRow;
for(int j=0; j<OTHER_NUMBER; j++)
{
fogRow.push_back( 0 );
}
fog.push_back(fogRow);
}
而且感觉很不对劲……有没有另一种方法来初始化这样的向量?
原文由 Ferenc Deak 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用接受初始大小和默认值的
std::vector::vector(count, value)
构造函数:如果一个非零值,例如
4
,则需要作为默认值:我还应该提到在 C++11 中引入了统一初始化,它允许使用
{}
初始化vector
和其他容器: