2011-02-16 65 views
0

我有一部分代碼是用C++編寫的,我想從ObjectiveC代碼中使用此代碼。在C++代碼中,我有一個帶有靜態字段的類。在ObjC代碼中,我設置了這些字段並稍後嘗試閱讀它們。但是,當我讀到這些領域的價值時,我會得到一些垃圾。在ObjectiveC代碼中使用C++類中的靜態字段

代碼看起來更不像這樣, 在一個類中,我有:

CCommunication::portNumber = 7777; //some value 

另一類後來我:

int portNo = CCommunication::portNumber; //and here I get some rubbish values 

有時使這個更奇怪的,當我運行我的iPhone上的相同代碼連接到我的Mac上,效果很好,當我在沒有連接到Mac的iPhone上運行此代碼時,代碼的工作方式就像破損一樣。

任何想法?

+0

你最終找到了你的問題的答案? – matthias 2011-08-29 19:36:04

回答

0

您應該定義CCommunication類中的公共訪問器,它將返回這些靜態值,那麼您應該能夠從objective-c類中調用那些訪問器,只要該類在objective-C++文件中實現(* .mm)。