我有代碼的結構是這樣的:的#include循環依賴錯誤
RESOURCE.H:
#include"a.h"
#include"b.h"
#include"c.h"
啊:
#ifndef __A__
#define __A__
#include"resource.h"
class B;
class A{
//something uses B
};
#endif
BH:
#ifndef __B__
#define __B__
#include"resource.h"
class A;
class B{
//something uses A
}
#endif
CH:
#ifndef __C__
#define __C__
#include"resource.h"
class A;
class B;
class C{
//something uses A and B
};
#endif
問題是:VS2010告訴我,在c.h中,行#include「resource.h」導致「resource.h」包含自身。
但是,代碼能夠按照預期進行編譯和執行。所以我想知道是什麼原因導致這個錯誤intellisense在VS中,如果有無論如何刪除它。
P.S:我用VS編譯,沒有編譯錯誤。
用* Errorr *編譯? –
我猜你的問題不在你已經發布的代碼中,而是關於你實際包含的具體內容。 – Joe
請勿使用帶有雙下劃線的標識符;它們被保留供實施使用。 –