首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

简单vector使用出错! 请问!

2012-02-07 
简单vector使用出错!! 请教!!intmain(){vector WidgetvWidgetw1(1)Widgetw2(2)Widgetw3(3)cout v.

简单vector使用出错!! 请教!!
int   main()   {
    vector <Widget>   v;

    Widget   w1(1);
    Widget   w2(2);
    Widget   w3(3);

    cout   < <   v.size()   < <   endl;
    v[0]   =   w1;
    cout   < <   v.size()   < <   endl;
    v[1]   =   w2;
    cout   < <   v.size()   < <   endl;
    v[2]   =   w3;
    cout   < <   v.size()   < <   endl;

    return   0;
}

Segmentation   fault

不是说vector可以自动增长的么???


[解决办法]
v[0] = w1;
靠,里面什么东西都没有还v[0]?
v.push_back(w1);
下面同理
[解决办法]
自动增长 是里面的内容多了,超过容量了会自动重新分配内存并拷贝
[解决办法]
vector的自动增长是靠push_back/insert接口实现的。
看东西,其实不能看半句啊。
[解决办法]
push_back 是正解。
[解决办法]
push_back是增加,当然也可以构造的时候多分配一点,

热点排行