2014-02-12 65 views
0

我的頭文件有問題。 由於某些原因,它給了我關於字符串的錯誤。 在Header.h我C++錯誤中的字符串C2061

#include <string> 
#ifndef HEADER_H 
#define HEADER_H 
class Player 
{ 
    public: 
    string firstName; 
    string lastName; 
    int birthYear; 
    string *matchDates; 

    string toString(); 
    void addMatchDate(string date); 
    Player(); 
    Player(string firstName, string lastName, int birthYear); 
    ~Player(); 
}; 
#endif 

但上帝知道什麼原因,它給了我一堆錯誤。 這些都是一些錯誤的:

 
Error C2146: syntax error : missing ';' before identifier 'firstName' 
Error C2146: syntax error : missing ';' before identifier 'lastName'  
Error C2061: syntax error : identifier 'string' 

任何想法如何解決這個問題?

+1

使用限定名('string'在命名空間'std'中定義):'std :: string'。 – hmjd

+0

哦,所以我可以添加命名空間標準? – Snigelmat

+2

請參閱http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice – hmjd

回答

2

名稱字符串在標準名稱空間標準中定義。

要不就是類定義使用指令

using std::string; 

或指定合格的名稱

std::string 
每當你使用這種類型的

之前。