[問題] class 中傳遞 member 問題

看板C_and_CPP作者 (5566 超強)時間12年前 (2012/04/17 11:06), 編輯推噓2(2011)
留言13則, 5人參與, 最新討論串1/1
請問一下各位 我現在使用MFC 我有一個 class ToolDlg : public CDialog { public: int rawdata[10]: } 這個 rawdata[10] 已經給予資料進去 假設是 0 1 2 3 4 5 6 7 8 9 class Cmode : public CDialog { public: ToolDlg mdlg; void testfunction(); } void Cmode :: testfunction() { int i; int val = 0; for(i = 0; i<10; i++) val = mdlg.rawdata[i]; } 為什麼我讀到所有的 rawdata[i] 0~10 裡面的資料都不見了 都是 0xcc 感謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.202.0.12

04/17 11:10, , 1F
這就像你在自己的皮包放了一千塊,然後拿著別人的皮包
04/17 11:10, 1F

04/17 11:11, , 2F
在同樣的位置想找那一千塊,卻發現找不到。根本拿錯
04/17 11:11, 2F

04/17 11:16, , 3F
那請問要怎麼 改呢 不是很懂
04/17 11:16, 3F

04/17 11:25, , 4F

04/17 12:38, , 5F
http://codepad.org/fgnXO9ST 隨便弄個可以跑的
04/17 12:38, 5F

04/17 12:39, , 6F
rawdata[i]資料有正確丟進去嗎
04/17 12:39, 6F

04/17 13:32, , 7F
有 rawdata 資料是對的
04/17 13:32, 7F

04/17 13:37, , 8F
0xcc看起來是VS做DEBUG塞的值,所以我想你資料根本沒塞好吧
04/17 13:37, 8F

04/17 13:43, , 9F
所以我猜阿,你在ToolDlg塞值的動作,並沒有在Cmode建立
04/17 13:43, 9F

04/17 13:44, , 10F
ToolDlg的時候跑到那個塞值的地方。
04/17 13:44, 10F

04/17 13:49, , 11F
弄清楚class和instance和差異應該就沒問題囉
04/17 13:49, 11F

04/17 13:49, , 12F
04/17 13:49, 12F

04/17 15:38, , 13F
謝謝~
04/17 15:38, 13F
文章代碼(AID): #1FZDu_gu (C_and_CPP)