2011-02-08 14 views
4
#ifndef STRCUTS_H 
#define STRCUTS_H 
#include <string> 

struct menuEntry 
{ 
    string itemID; //'string' does not name a type 
    string itemName; //'string' does not name a type 
}; 

#endif 

#<文字列>をヘッダガードの上に置くと同じエラーが発生します。それを考えてみると、以前はヘッダーに構造体定義を置くことで奇妙な問題が発生しました。私が得られないものでなければならない。#include <string>ヘッダーにはいくつかの構造体が定義されています。エラー:文字列で型が定義されていません

答えて

7

あなたはstd::stringからstring、すなわち

#ifndef STRCUTS_H 
#define STRCUTS_H 

#include <string> 

struct menuEntry 
{ 
    std::string itemID; 
    std::string itemName; 
}; 

#endif 
+1

を変更したり、 'のstd :: STRING'を使用するか、または'使用して名前空間のstd'を追加する必要があります。ちょうどFYI。 – KitsuneYMG

+4

@KitsuneYMG:いいえ - 'namespace std'を使うべきではありません。(ヘッダーに' namespace 'を使用しないでください。 –

関連する問題