我寫了我的程序,它的工作原理是當我把所有的東西放在頭文件中,然後有我的主文件。我現在將它們分解爲實現文件,但Eclipse不斷給我提供錯誤。它給了我錯誤的構造函數和函數的每個開頭大括號。它對所有人都說「重新定義(構造函數或方法的名稱),以前在這裏聲明。」我做錯了什麼,因爲它在頭文件中工作?實現與頭文件
#include "KeyValuePair.h"
template<typename Key,typename Value>
KeyValuePair<Key,Value>::KeyValuePair()
{ // error here
}
template<typename Key,typename Value>
void KeyValuePair<Key,Value>::setPair(Key key, Value value)
{ // error here
pairKey = key;
pairValue = value;
}
template<typename Key,typename Value>
Key KeyValuePair<Key,Value>::getKey() const
{ // error here
return pairKey;
}
template<typename Key,typename Value>
Value KeyValuePair<Key,Value>::getValue() const
{ // error here
return pairValue;
}
頭文件:
#ifndef _KEYVALUEPAIR_H_
#define _KEYVALUEPAIR_H_
template<typename Key,typename Value>
class KeyValuePair
{
private:
Key pairKey;
Value pairValue;
public:
KeyValuePair();
void setPair(Key key,Value value);
Key getKey() const;
Value getValue() const;
};
#include "KeyValuePair.cpp"
#endif
模板定義進去的頭文件,你這樣做 – 2013-02-10 03:22:04