2010-03-26 59 views

回答

9

在蘋果的編譯器的wchar_t大小爲4個字節,所以std::wstring被編碼在UTF32,而不是在UTF16在微軟和其他編譯器。

std::wstring sCpp = L"hello"; 
NSString * sObjC = [[NSString alloc] initWithBytes:sCpp.data() 
              length:sCpp.size() * sizeof(wchar_t) 
              encoding:NSUTF32LittleEndianStringEncoding];