青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

cyt
借助valgrind,終于找到一個(gè)隱藏很久的bug:
class?A
{
????
}
;
std::vector
<A>??vecArray;

vecArray.push_back(??);
vecArray.push_back(??);
vecArray.push_back(??);

A?
&?a=?vecArray.back();
vecArray.push_back(??);


以上的代碼驟眼看上去也沒(méi)有什么奇怪的地方,經(jīng)過(guò)多次的測(cè)試也沒(méi)有發(fā)現(xiàn)什么問(wèn)題。但昨天bug終于爆發(fā)了,程序總是無(wú)緣無(wú)故down掉。
其實(shí)原因很簡(jiǎn)單,就是在 A & a = vecArray.back(); 這一步。
vector是一個(gè)會(huì)自增長(zhǎng)的容器,自增長(zhǎng)的結(jié)果就是把原來(lái)的內(nèi)存釋放掉,重新分配一個(gè)足夠大的內(nèi)存。既然原來(lái)的內(nèi)存已經(jīng)釋放掉,那么a所引用的內(nèi)存就是一段無(wú)效的內(nèi)存。對(duì)無(wú)效內(nèi)存的訪問(wèn),后果有多嚴(yán)重就不用多說(shuō)了。

想解決方法也很多,最簡(jiǎn)單就是用std::list或者std::deque替代vector。
posted on 2005-11-09 15:22 cyt 閱讀(7980) 評(píng)論(8)  編輯 收藏 引用 所屬分類(lèi): Work
Comments
  • # re: 使用std::vector的一個(gè)誤區(qū)
    glacjay
    Posted @ 2005-11-09 22:06
    不可以保存索引嗎?必須要用指針嗎?為了效率?  回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)
    cyt
    Posted @ 2005-11-10 09:23
    用索引是可以,不過(guò)個(gè)人不大喜歡用索引。其原因就是索引并不是stl容器所共有的特性,一旦使用了索引,以后如果需要轉(zhuǎn)換為其他容器的時(shí)候,未免需要改動(dòng)不少地方。另外,我這里所說(shuō)的只是一種解決方法。對(duì)于我這種情況,只需要更改一個(gè)typedef定義就可以解決問(wèn)題。如果改成是用索引的話,需要更改不少地方,而且很容易會(huì)漏了。
    程序本身算法也比較復(fù)雜,相對(duì)來(lái)說(shuō)使用索引性能也不會(huì)下降多少,這個(gè)倒不是什么需要考慮的地方了。  回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)
    nilaozi
    Posted @ 2005-11-11 22:23
    最后一次評(píng)論。也夠出氣了!

    一個(gè)在blogjava失去家園的人聲討。
    除了政治原因可以刪了一個(gè)人blog,別的理由都不能成為理由。
    我為每個(gè)都到他們所需的ebook難道錯(cuò)了,
    貼到首頁(yè),我還以你們有預(yù)申機(jī)制,CSDN是這樣,管理員認(rèn)為可以才放到首頁(yè)。
    不信你到他們的首頁(yè)看看。
    http://csdn.blog.net/ahhoo
    如果你認(rèn)為還不錯(cuò)的,請(qǐng)到回貼。
      回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)
    blues
    Posted @ 2006-09-04 14:05
    vector和deque的差別是操作上的,list雖然是基于鏈表的,但是不能隨機(jī)訪問(wèn),任何的容器都不是完美的,而且使用指針必然要判斷,但也算是個(gè)bug,
    我想解決的話類(lèi)型用boost的any應(yīng)該可以了,它本身帶有安全檢查,我沒(méi)試僅是建議  回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)
    stl
    Posted @ 2008-10-06 01:03
    STL里的容器大部分都是“值”容器,你用“引用”去訪問(wèn)容器里的內(nèi)容,錯(cuò)了正常。這不是vector的問(wèn)題,你自己使用的問(wèn)題。如果基于性能考慮上面的程序一定要使用“引用”語(yǔ)意的話,應(yīng)該用vector<A*>的寫(xiě)法才比較正確。  回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)
    過(guò)客
    Posted @ 2008-11-04 08:42
    樓上的同志說(shuō)的好,STL的容器最好使用指針,  回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)[未登錄](méi)
    毛毛蟲(chóng)
    Posted @ 2011-08-20 21:40
    我也覺(jué)得應(yīng)該vector<A*>比較好。  回復(fù)  更多評(píng)論   
  • # re: 使用std::vector的一個(gè)誤區(qū)
    lancen
    Posted @ 2014-04-05 16:07
    很同意的你看法  回復(fù)  更多評(píng)論   
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品av免费在线观看| 久久激五月天综合精品| 欧美在线3区| 欧美日韩国产a| 在线观看欧美| 欧美在线地址| 夜夜躁日日躁狠狠久久88av| 久久久欧美精品sm网站| 国产精品视频yy9299一区| 99精品国产在热久久婷婷| 欧美α欧美αv大片| 欧美一区二区三区在| 欧美无砖砖区免费| 99精品国产在热久久下载| 欧美大片在线观看一区二区| 欧美亚洲一级| 国产精品视频99| 亚洲一区日韩在线| 日韩网站免费观看| 欧美激情第二页| 亚洲黑丝一区二区| 老巨人导航500精品| 中文一区二区在线观看| 欧美久久一级| 亚洲日本理论电影| 男人天堂欧美日韩| 久久激情视频免费观看| 国产一区91| 久久久www成人免费精品| 亚洲综合好骚| 国产欧美精品日韩| 欧美一区二视频| 亚洲香蕉伊综合在人在线视看| 欧美日韩天堂| 亚洲午夜精品久久久久久app| 亚洲精品欧美| 美女黄色成人网| 亚洲国产精品久久久久秋霞影院 | 欧美成人69av| 久久蜜桃精品| 亚洲国产成人高清精品| 欧美a级大片| 老司机精品视频一区二区三区| 尤物yw午夜国产精品视频| 老司机aⅴ在线精品导航| 久久精品综合一区| 亚洲第一成人在线| 欧美激情第10页| 欧美伦理在线观看| 亚洲性视频网站| 亚洲影院一区| 国产一区美女| 欧美大片免费观看在线观看网站推荐| 老巨人导航500精品| 亚洲人体1000| 999在线观看精品免费不卡网站| 欧美少妇一区二区| 亚洲视频在线二区| 亚洲精品护士| 欧美视频一区二区三区在线观看 | 一本色道久久综合亚洲91| 亚洲精品在线免费| 欧美婷婷六月丁香综合色| 亚洲一区二区欧美| 亚洲女人天堂av| 国内免费精品永久在线视频| 久久性天堂网| 欧美高清一区二区| 亚洲午夜激情| 欧美在线啊v| 最近中文字幕日韩精品| 亚洲精品一区二区三区婷婷月 | 国产毛片一区二区| 久久久精品日韩| 蜜桃av噜噜一区二区三区| 一本色道综合亚洲| 亚洲欧美日韩国产综合精品二区| 黄网站免费久久| 亚洲欧洲日夜超级视频| 国产精品―色哟哟| 欧美成人激情在线| 欧美午夜激情小视频| 久久精品在线观看| 欧美成人第一页| 午夜在线a亚洲v天堂网2018| 久久精品一区二区| 一本久道久久久| 欧美一区二区三区免费在线看| 亚洲国产欧美日韩另类综合| 一本久久知道综合久久| 国产在线拍偷自揄拍精品| 亚洲国产欧美一区| 国产麻豆日韩欧美久久| 欧美激情日韩| 国产农村妇女毛片精品久久麻豆| 欧美成人精品1314www| 国产精品扒开腿做爽爽爽软件 | 欧美伊人久久久久久久久影院 | 国产午夜精品久久久久久免费视| 亚洲大胆女人| 国产精品亚洲第一区在线暖暖韩国| 免费高清在线视频一区·| 欧美视频导航| 欧美成人午夜激情| 国产精品午夜春色av| 欧美激情1区2区3区| 国产九九精品| 亚洲精品老司机| 黄色精品免费| 亚洲视频播放| 亚洲精品影院在线观看| 欧美一级网站| 亚洲午夜激情免费视频| 麻豆精品一区二区综合av| 欧美亚洲自偷自偷| 欧美人妖在线观看| 嫩草成人www欧美| 国产九九精品视频| 99国产精品视频免费观看| 在线观看日韩www视频免费 | 欧美精品久久久久久久久久| 久久久国产精品一区二区三区| 欧美日韩免费看| 欧美va亚洲va香蕉在线| 国产日韩欧美视频| 一区二区三区欧美激情| 亚洲日本va在线观看| 欧美中文字幕不卡| 午夜精品久久久久久久99黑人| 欧美精品大片| 欧美成人在线免费视频| 国产亚洲综合性久久久影院| 中文av一区特黄| 一区二区三区成人| 欧美不卡视频一区| 免费成人黄色av| 国语精品一区| 午夜精品久久久久99热蜜桃导演| 亚洲视频网站在线观看| 欧美高清在线视频| 欧美成人免费网站| 极品少妇一区二区三区精品视频| 亚洲免费视频一区二区| 亚洲一区二区成人| 欧美日韩亚洲国产精品| 亚洲国产综合91精品麻豆| 在线成人欧美| 久久精品在线播放| 久久久999成人| 国产亚洲福利社区一区| 亚洲欧美国产精品va在线观看 | 国产精品萝li| 日韩一级精品视频在线观看| 亚洲人成在线播放| 久久人人爽人人爽爽久久| 久久精品一区四区| 国产日韩在线亚洲字幕中文| 亚洲午夜精品久久| 亚洲专区在线视频| 欧美日韩在线一区二区三区| 亚洲人成啪啪网站| 亚洲六月丁香色婷婷综合久久| 麻豆精品一区二区综合av| 男同欧美伦乱| 91久久在线观看| 欧美岛国激情| 亚洲精品久久久久久久久久久| 亚洲美女毛片| 欧美精品一区二区高清在线观看| 亚洲国产精品毛片| 日韩一二三区视频| 欧美日韩播放| 亚洲最新中文字幕| 亚洲欧洲99久久| 国产麻豆精品在线观看| 欧美一区二区免费| 蜜桃久久av| 亚洲激情影视| 欧美精品一线| 亚洲少妇自拍| 欧美亚洲视频在线看网址| 国产精品一区在线播放| 午夜日韩视频| 久久综合色婷婷| 91久久精品视频| 欧美日韩二区三区| 中文av字幕一区| 久久精品久久综合| 亚洲第一中文字幕| 欧美精品一区二区在线播放| 夜夜精品视频| 久久国产精品亚洲va麻豆| 国产一区二区三区在线观看网站| 久久激情视频| 亚洲国产欧美在线人成| 亚洲无限av看| 国产亚洲精品久久久久久| 久久人人爽人人爽| 亚洲精品日韩在线| 小黄鸭精品密入口导航|