[問題] return vector<int> 會有問題嗎?

看板C_and_CPP (C/C++)作者 (藍影)時間15年前 (2011/02/22 15:12), 編輯推噓0(003)
留言3則, 3人參與, 最新討論串1/1
目前我知道的東西是 -------- int* Alloc1(int n){ return new int[n]; } // ----> 這個沒問題 -------- #define n 10 int* Alloc2(){ int array[n]={0,1,2,3,4,5,6,7,8,9}; return array; } // ----> 這個有問題, array 生命週期結束 -------- 想請教的是, vector<int> AllocVector(int n){ return vector<int> v(n,0); } 想確定是不是可以這麼做?還是只是我運氣好,所以調用沒問題? 謝謝回覆。 -- YouLoveMe() ? LetItBe() : LetMeFree(); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.76.142

02/22 15:20, , 1F
可以, 這樣會 copy 一份 v 的值回傳
02/22 15:20, 1F

02/22 15:20, , 2F
沒問題,會回傳 v 的複製品
02/22 15:20, 2F

02/22 17:07, , 3F
謝謝樓上二位,非常感謝
02/22 17:07, 3F
文章代碼(AID): #1DOs7HOl (C_and_CPP)
文章代碼(AID): #1DOs7HOl (C_and_CPP)