error C2143的原因及解決辦法

2021-08-31 02:55:27 字數 860 閱讀 7354

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!

今天遇到乙個有點詭異的編譯錯誤:1>c:/program files/microsoft visual studio 8/vc/include/yvals.h(513) : error c2143: syntax error : missing ';' before namespace (vs c++2005環境下)。然後上網查資料,大致弄明白了這個錯誤的根源。這個錯誤是在編譯乙個cpp檔案時出現的。我檢查了一下這個cpp檔案,並沒發現問題。我又發現它包含了乙個stack.h。這個stack.h為我定義的乙個堆疊類標頭檔案宣告。我檢查了一下stack.h,發現該檔案存在的問題是:

[cpp]view plain

copy

print?

class cstack  

// 缺少分號 

class cstack  // 缺少分號 

就是說這個編譯錯誤在什麼條件下出現呢?就是包含的自定義的標頭檔案存在問題,但緊接著包含stl的標頭檔案,如我的:

[cpp]view plain

copy

print?

#include "stack.h"

#include 

using std::cout;  

#include "stack.h"#include using std::cout; 

這樣就會出現error c2143的錯誤。

給我老師的人工智慧教程打call!

error C2143的原因及解決辦法

今天遇到乙個有點詭異的編譯錯誤 1 c program files microsoft visual studio 8 vc include yvals.h 513 error c2143 syntax error missing before namespace vs c 2005環境下 然後上網...

error C2143的原因及解決辦法

今天遇到乙個有點詭異的編譯錯誤 1 c program files microsoft visual studio 8 vc include yvals.h 513 error c2143 syntax error missing before namespace vs c 2005環境下 然後上網...

load data inpath出錯原因及解決方法

hive load data inpath hdfs into table person1 failed semanticexception error 10028 line 1 17 path is not legal hdfs move from hdfs to hdfs is not vali...