Re: [問題] class中宣告變數陣列大小是否有限制?

看板C_and_CPP (C/C++)作者 (C.L.R.S 四大天王)時間14年前 (2011/09/09 13:13), 編輯推噓3(301)
留言4則, 3人參與, 最新討論串2/2 (看更多)
※ 引述《WhisperGhost (oops)》之銘言: : 若用 A tmp; : 我發現在Constructor中new出來的member pointer variable的位址會不固定。 : 改用 A* tmp; : 他的位址則會固定。 : 不曉得問題是不是出在這個地方,因為第一次寫class有些觀念很亂。 : 謝謝 A tmp 整個stack上都賽滿的是你的物件, 因為你物件 中的array太大, 讓你存取的時候已經超過了stack的範圍 這就是不可預期的結果了.. 只要你用 1. global object A temp int main() { : } 2. static object int main() { static A tmp; : } 3. Heap 都可以解決 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 69.106.57.160

09/09 13:49, , 1F
也可以讓每個class只拿一個指標,然後用constructor
09/09 13:49, 1F

09/09 13:49, , 2F
new陣列、destructor delete
09/09 13:49, 2F

09/09 16:39, , 3F
Global Variables are evil
09/09 16:39, 3F

09/10 18:23, , 4F
在陣列中直接存物件本身就有點少見吧 通常是存pointer
09/10 18:23, 4F
文章代碼(AID): #1EQQ21pa (C_and_CPP)
文章代碼(AID): #1EQQ21pa (C_and_CPP)