我在一個有幾個班的項目中工作。所有頭文件都包含在「包含」文件夾中,並且所有src文件都位於另一個文件夾中。但是,在這一點上,一直沒有問題的班級缺失。錯誤C2143。爲什麼VC++找不到我的課程?
產生錯誤的代碼是:
namespace render{
class CSprite2D
{
CTexture * m_texture;
和誤差是語法錯誤:缺少 ';'之前'*' 所以我不知道爲什麼VC++找不到我的課程。至於VC++編譯類的順序非常不一樣:在嘗試編譯Texture.cpp之前檢測sprite2D中的錯誤。此外,CTexture類已經進入該項目,並在創建sprite2D之前完美運行。
你能幫助我找到一些竅門嗎?
* 編輯: *它的工作原理,解決方案是簡單地轉發聲明紋理類(感謝詹姆斯和peenut)。但是現在我的疑問是:如果我已經包含紋理,爲什麼我需要轉發聲明紋理類?包含頭文件是不夠的?
在此先感謝。
順序應該沒關係,你是否包含該代碼之前的頭文件? – GManNickG 2011-01-13 23:09:53
你有沒有在你需要他們的地方包括正確的標題?你有問題遞歸包括對方的標題? – 2011-01-13 23:10:15