2012-11-29 57 views
-2

示例代碼:C++上類型的問題(類型名)

文件:LinkedStack.h

#include "NodeType.h" 

#ifndef LINKEDSTACK_H 
#define LINKEDSTACK_H 

template <class ItemType> 
class LinkedStack { 
public: 
    NodeType topPtr; 
}; 

文件:NodeType.h

#ifndef NODETYPE_H 
#define NODETYPE_H 

template <class ItemType> 
class NodeType { 
public: 

    ItemType info; 
    NodeType *nextElement; 

}; 

#endif /* NODETYPE_H */ 

文件:main.cpp中

#include "NodeType.h" 
#include "LinkedStack.h" 

using namespace std; 

int main(int argc, char** argv) { 

    return 0; 
} 

當我運行這個,我不斷得到:

LinkedStack.h:20:錯誤:'節點類型」沒有指定類型

然而節點類型已經定義並列入?

+0

的http://stackoverflow.com/questions/1761018/does-not-name-a-type-in​​-c Downvoting爲貧困的研究工作可能重複的 - 至少谷歌的錯誤在發佈問題之前。 – djechlin

+0

@djechlin請參閱hmjd的回覆和您提供的鏈接,如果您仍然認爲它們是重複的,那很好。 –

回答

4

NodeTypetemplate。更改爲:

NodeType<ItemType> topPtr; 
+0

謝謝,我正要失去理智。 –