vector<Entry> book(1000) 和 vector<Entry> books[1000]的区别?
偶正在看The C++ Programming Language ,在P52有个例子,
struct Entry{
sring name ;
int number ;
};
vector<Entry> book(1000) ; // vector of 1000 elements
vector<Entry> books[1000] ; // 1000 empty vectors
但是,书中并没有给出vector<Entry> books[1000]使用的例子,故想请教大家,
books该怎样使用?
问题点数:20、回复次数:5Top
1 楼hxblvc(还是好好学吧...)回复于 2004-12-01 20:03:44 得分 4
books[0].push_back();
Top
2 楼willko(珂http://www.willko.cn)回复于 2004-12-01 20:04:45 得分 4
books就象一个二维数组Top
3 楼ct57(wuxi)回复于 2004-12-01 20:11:41 得分 7
vector<Entry> book(1000); 是创建一个向量对象,初始的容量是1000,也就是只有一个book,这个book的初始容量是1000;
vector<Entry> books[1000]; 是创建1000个向量对象,也就是有1000个books,每个的初始容量是vector默认给定的值(0,插入一个元素以后,自动增长为256,插入超过256以后又自动增长一倍。。。)。
你可以这样理解,vector<Entry> book(1000); 是一维数组,
vector<Entry> books[1000];是二维数组。
Top
4 楼WiseNeuro(春之舞)回复于 2004-12-01 21:00:54 得分 0
大家可不可以给个例子,说明如何使用它里面的name 和number字段。谢谢。Top
5 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2004-12-01 21:13:17 得分 5
定义一个stuct,初始化它的name number
然后push_back放到vector中,
访问,取出struct,然后再用struct访问它的成员变量name ,numberTop




