Re: [STL ] 使用map的記憶體問題

看板C_and_CPP (C/C++)作者時間16年前 (2009/05/14 01:44), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/3 (看更多)
※ 引述《jesony1 (小豬先生)》之銘言: 這倒是讓我想到一個問題 下面這一段程式碼 用100個loop去對100個vector 做assign的動作 然後再clear 掉 #include <iostream> #include <vector> using namespace std; int main() { vector<int> v[ 100 ] ; for( int i = 0 ; i < 100 ; i++ ) { v[ i ].assign( 10000000, 0 ) ; v[ i ].clear() ; } return 0; } 但執行後卻發現 記憶體越吃越多 完全沒有釋放 而這段程式碼執行時間也會相當長 (我還沒有試著把它跑完過) 這是 STL 本身的設計嗎?? 這與我原本預期的並不相同 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.218.75

05/14 08:27, , 1F
vector<int>().swap(v[i]);
05/14 08:27, 1F
文章代碼(AID): #1A2mSIff (C_and_CPP)
文章代碼(AID): #1A2mSIff (C_and_CPP)