1
的Visual C++ 2008給我這個奇怪的錯誤,所以我去掉了所有的多餘的東西在我的頭文件(util.h ),並將其歸結爲:C++語法錯誤和遺漏類型說明符
#ifndef UTIL_H
#define UTIL_H
void pause();
#endif
當我嘗試編譯上面的代碼我得到這個:
Compiling...
util.cpp
util.h(4) : error C2144: syntax error : 'void' should be preceded by ';'
util.h(4) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
<snip>
我深感困惑。即使我註釋掉ifndef,define和endif,預處理指令,它仍然會說同樣的事情。
有時,看着被錯誤指向行幫助:) –
沒有那東西。該錯誤指向的行完全正常。 – charmoniumQ
該行'#include「stdafx.h」b'應該已經產生了關於'#include'指令中額外標記的特定診斷。 (gcc會這樣做。)仔細閱讀C++標準指出,與#include <...>'或'#include「...」''不匹配的'#include'指令行不符合兩種形式之一未定義的行爲,但編譯器診斷錯誤非常容易。 –