vector<int>ivec1(10,42); //内置方法,初始化的内容为10个42
print(ivec1.begin(),ivec1.end());
vector<int>ivec2(10);
vector<int>::size_type ix=0;
for(ix;ix<10;++ix)
{
ivec2[ix]=42; //下标操作
}
print(ivec2.begin(),ivec2.end());
vector<int>ivec3(10);
for(vector<int>::iterator iter=ivec3.begin();iter!=ivec3.end();++iter)
{
*iter=42; //迭代器
}
print(ivec3.begin(),ivec3.end());
//下面两种方法最佳,他们使用标准库定义的操作,无须再定义vector对象时指定容器的大小。比较灵活且不容易出错.
vector<int>ivec4;
vector<int>::iterator iter=ivec4.end();
for(int i=0;i!=10;++i)
{
ivec4.insert(iter,42); //在指定位置iter前插入值为的元素,返回指向这个元素的迭代器,
iter=ivec4.end();
}
print(ivec4.begin(),ivec4.end());
vector<int>ivec5;
vector<int>::size_type cnt=1;
for(cnt;cnt<=10;++cnt)
{
ivec5.push_back(42); //push_back()添加值为的元素到当前vector末尾
}
print(ivec5.begin(),ivec5.end());
int arr[10] = {0,1,2,3,4,5,6,7,8,9};
vector<int> ivec5(arr,arr+10); // 数组数值
print(ivec5.begin(),ivec5.end());
// 6
std::vector<unsigned short> vec1(m_line.rf, m_line.rf + kFrameCols);
// 7
g_vecDeviceInfoStorage.clear();
g_vecDeviceInfoStorage.shrink_to_fit();
std::copy(m_line.rf, m_line.rf + kFrameCols, std::back_inserter(g_vecDeviceInfoStorage));
// 8
std::vector<unsigned short> vec2;
for (int i = 0; i < kFrameCols;++i)
{
vec2.push_back(m_line.rf[i]);
}
C++ vector 赋值
最新推荐文章于 2022-09-20 19:00:27 发布