看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) vs2008 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 使用動態配置之 vector<int *> 是否會有 memory leak 問題 ? 程式碼(Code):(請善用置底文網頁, 記得排版) #define M 5 #define N 4 vector<int *> v; int *ptr=NULL; for(size_t m=0; m!=M; ++m){ ptr = new int[N]; for(size_t n=0; n!=N; ++n){ ptr[i] = rand() %100; v.pushback(ptr); } } 請問這段程式碼是否會有 memory leak ? 補充說明(Supplement): 另問另一問題, 這陣子遇到一些問題, 要做暴力之列舉, 陣列索列次數增加 爬文後看到這東西 #1DI1lIAy , 若 comiler 為 dev-c, 試問有分 relase mode 及 debug mode 嗎? 另在 dev-c 有辦法把 checked iterators 相關的 bounding check 關掉嗎? 謝謝各位先進不吝指教, 感激不盡! -- YouLoveMe() ? LetItBe() : LetMeFree(); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.76.142
Ebergies:看到一個 new 就得要有一個 delete 03/09 16:00
for(i=0; i<v.size(); ++i) delete v[i]; 請問是這麼做嗎? ※ 編輯: tropical72 來自: 180.177.76.142 (03/09 16:03)
purpose:http://codepad.org/S0shy7PN 會有leak 03/09 16:20
tropical72:for(size_t m; m!=M; ++m) delete v[m]; 好像不能這樣 03/09 16:39
pichubaby:原PO這段程式是想做什麼? 03/09 17:19
tropical72:我整理一下我的問題再重發好了 03/09 17:50
loveme00835:http://codepad.org/HhYon21a 省事多了 03/09 18:23
Ebergies:for(i=0;i<v.size();i++) delete[] v[i]; 03/09 21:18
tropical72:感謝樓上,正是我要的. 03/10 01:01