我有很多共享的C++代碼,我想在我的iPhone應用程序中使用。我將.cpp和.h文件添加到我的Xcode項目中,並在我的Objective-C++代碼中使用這些類。該項目編譯罰款0錯誤或警告。在Objective-C++中使用共享的C++/STL代碼
然而,當我運行它在模擬器中,我得到以下錯誤,當我試圖在我的Objective-C代碼(如.c_str()
)來訪問STL方法:
Program received signal: 「EXC_BAD_ACCESS」.
Unable to disassemble std::string::c_str.
這裏的一個例子代碼導致錯誤:
[name setText:[[NSString alloc] initWithCString:myCPlusPlusObject->cppname.c_str()]];
name
其中是的NSTextField對象和cppname
是myCPlusPlusObject
爲std :: string構件。
我對此有何看法?在Objective-C++中使用STL-C++類有更好的方法嗎?如果可能的話,我想保持常見的C++文件不變,以避免在兩個地方維護代碼。
在此先感謝!
謝謝你。我通過代碼,發現我沒有填充指針......菜鳥錯誤! – 2009-06-05 03:49:28