討論串若在 function 動態配置又要傳回去 那該在哪還?
共 3 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓3(3推 0噓 1→)留言4則,0人參與, 最新作者cppOrz (cppOrz)時間18年前 (2006/03/28 06:10), 編輯資訊
0
0
0
內容預覽:
可以的。因為 return 的是 new 出來的位址,離開. 函式時,被清掉的指標只是區域變數。. 其實原本把物件透過參數列傳進來,是比較正確的作法,但在 C. 語言裏面沒有 reference,語法較為複雜,所以就直接 return. new 或 malloc 出來的位址:. T *foo();
(還有548個字)

推噓1(1推 0噓 4→)留言5則,0人參與, 最新作者cppOrz (cppOrz)時間18年前 (2006/03/31 23:46), 編輯資訊
0
0
0
內容預覽:
只有 1. b 是 fun 裏的區域變量(型別是 pointer to char),所以離開函式時會被清掉。. 指標變量只是一個 4 bytes 的整數(在 32-bit 機器上),它所參照的內容可以是. 配置在 stack 或 global/static 或 heap 上的物件(內存),但其參照物
(還有1505個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者cppOrz (cppOrz)時間18年前 (2006/04/03 00:30), 編輯資訊
0
0
0
內容預覽:
對. 最簡單的改法是一律由外部(main)配置:. void foo(T *p). {. .... }. int main(). {. T *p = new T;. foo(p);. ... // do something with p. delete p;. }. 如果嫌這樣麻煩,可考慮用 aut
(還有407個字)
首頁
上一頁
1
下一頁
尾頁