0
我試圖將GA庫(GALib)添加到我的無錯程序中,當我添加它時,編譯器會返回奇怪的錯誤並重復它們很多次......例如, 「語法錯誤:缺少‘{’前‘<’」被返回以用於下面的模板代碼的第一行:奇怪的編譯器行爲(C++)
template<class _Ty>
_Check_return_ inline _Ty _Pow_int(_Ty _Xx, int _Yx) _NOEXCEPT
{
unsigned int _Nx;
if (_Yx >= 0)
_Nx = static_cast<unsigned int>(_Yx);
else
_Nx = static_cast<unsigned int>(-_Yx);
for (_Ty _Zx = static_cast<_Ty>(1); ; _Xx *= _Xx)
{
if ((_Nx & 1) != 0)
_Zx *= _Xx;
if ((_Nx >>= 1) == 0)
return (_Yx < 0 ? static_cast<_Ty>(1)/_Zx : _Zx);
}
}
在cmath.h 重複像對同一行中的錯誤的錯誤25次左右。對於其他許多人也是如此。 (提到的錯誤是列表中的第一個) PS。我使用以下順序添加了GA文件: 1-項目屬性> C++>其他包含庫>選擇文件夾 2-將包含標題和源的文件夾拖放到項目解決方案管理器 PPS。所有源文件都帶擴展名.C不是.cpp 我該如何解決這種情況?
@Vality這是標準的庫代碼。 – immibis
@Peet它們應該是C++還是C源文件?可能該庫使用.C(大寫C)表示C++,但由於Windows不區分大小寫,因此它將.C同.c表示爲C. – immibis
@immibis我在寫這個問題的時候正在考慮這個問題,所以我回去了到GA庫的文檔,並發現: 「將開發環境設置爲在C文件上使用C++編譯器(這是MS Visual C++中的/ TP標誌)在Visual C++中啓用RTTI」 確定如何做到這一點,雖然...仍在搜索 – Peet