vector容器的问题
struct TempStruct {
std::vector<std::vector<int> > patt;
std::vector<float> conf;
};
TempStruct tmp;
tmp.patt = vector<vector<int> >(grid.size(),vector<int>(10,0));
请问大仙:
i)tmp.patt是指patt的首元素位置吗?
ii)tmp.patt = vector<vector<int> >(grid.size(),vector<int>(10,0))怎么理解?是为第一个元素初始化为vector<int>(10,0)吗?grid.size()值赋到哪去了?
[解决办法]
1 不是地址, 是成员
2
构造一个
vector<vector<int> >类型的对象
vector<vector<int> >(grid.size(),vector<int>(10,0));
调的是下面这个构造函数
explicit vector ( size_type n, const T& value= T(), const Allocator& = Allocator() );
说明如下:
Repetitive sequence constructor: Initializes the vector with its content set to a repetition, n times, of copies of value