在C++ 11項目中,我必須使用外部C庫。該庫主頭文件定義如何處理:重新聲明C++內置類型'char16_t'
typedef uint16_t char16_t;
而且由於它的C++程序,其中包括該庫失敗,與消息的編譯:
redeclaration of C++ built-in type ‘char16_t’
我唯一的想法是重新包裝整個庫,但因爲char16_t
在這個庫中是普遍的,所以它會非常耗時(如果可能的話)。有沒有一些明智的方法來處理這個問題?
編輯:
我還刪除有問題的線路,並與uint16_t更換char16_t的每一次出現,但我將不得不修改第三方庫頭,我特別不喜歡這個想法的另一個想法(可以有更類似的錯誤)。所以我也想知道在包含頭文件時,是否有一些好的方法來處理C++和C之間不兼容的更廣泛問題。
'C++ 0x11'。我還沒有聽說過。 –
@ ParkYoung-Bae:http://en.wikipedia.org/wiki/C%2B%2B17;) – PlasmaHH
我不知道'#define'在你眼中是否明智...... – PlasmaHH