[問題] int陣列宣告問題...VC++2005使用...

看板C_and_CPP (C/C++)作者 (牙月)時間16年前 (2009/09/08 16:38), 編輯推噓2(2010)
留言12則, 5人參與, 最新討論串1/1
在form1.h裡面宣告 int cAll[121]; 因為很多元件(按鈕)會需要用到... 我放在 == #pragma endregion 這裡 < private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ == 但是這樣失敗... 會出現... error C3845: '跳棋程式2::Form1::cAll' : 只有靜態資料成員可以在 ref 類別 或實值 型別中初始化 error C4368: 不可將 'cAll' 定義為 Managed '跳棋程式2::Form1' 的成員: 不支援混 合型別 但是只宣告單一個變數卻又可以... EX int cAll = 0; 請告訴我要如何宣告出可讓多個元件共通使用的全域變數... 以上 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.105.154.101

09/08 17:02, , 1F
a.cpp: int g_cAll = 0;
09/08 17:02, 1F

09/08 17:03, , 2F
b.cpp: extern g_cAll; c.cpp: extern g_cAll; .....
09/08 17:03, 2F

09/08 17:18, , 3F
放在.cpp裡面是可以啦...不過form1.h抓不到...
09/08 17:18, 3F

09/08 17:19, , 4F
變數實體宣告不要放在.h吧??
09/08 17:19, 4F

09/08 17:26, , 5F
那...那要怎麼讓form1.h裡面找的到實體變數呢...=口=
09/08 17:26, 5F

09/08 17:28, , 6F
from1.h 放 extern int g_cAll; 再在某個 .c 放 int g_cAll;
09/08 17:28, 6F

09/08 17:29, , 7F
這樣任何 include form1.h 的檔案都看得到 g_cAll;
09/08 17:29, 7F

09/08 17:29, , 8F
實體則放在該 .c 當中
09/08 17:29, 8F

09/08 17:29, , 9F
就像樓上l大說的那樣:)
09/08 17:29, 9F

09/08 17:36, , 10F
maple 3.02 就是實體變數放在 .h 裡面的例子
09/08 17:36, 10F

09/08 17:37, , 11F
說實在的 是非常不好的示範 XD
09/08 17:37, 11F

09/08 17:49, , 12F
成...成功啦!!! 俺好感動...。・゚・(ノД`)・゚・。
09/08 17:49, 12F
文章代碼(AID): #1AfXVsOA (C_and_CPP)
文章代碼(AID): #1AfXVsOA (C_and_CPP)