【发布时间】:2011-01-15 05:23:33
【问题描述】:
我可以创建一个数组并像这样初始化它:
int a[] = {10, 20, 30};
如何创建std::vector 并以同样优雅的方式初始化它?
我知道的最好方法是:
std::vector<int> ints;
ints.push_back(10);
ints.push_back(20);
ints.push_back(30);
有没有更好的办法?
【问题讨论】:
-
如果初始化后不打算改变int的大小,可以考虑使用tr1数组。
-
@zr,你让我很好奇......如果我需要固定大小,我不能自己使用普通的旧数组吗?现在正在查看 tr1 数组...
-
tr1::array很有用,因为普通数组不提供 STL 容器的接口 -
更改了标题,使其明确成为 C++03 问题。这似乎比通过新标准 C++ 解决所有问题更容易。
标签: c++ vector stl initialization