2016-05-25 8 views
0

私は奇妙な問題に直面しています。 まず、ここに私のコードです:「正規表現」タイプが認識されない

#ifndef REGEX_H 
#define REGEX_H 

#include <regex> 

/****************************** REGEX *************************/ 
class MyRegex { 
regex reg; 
StrategieLitteraux* strategie; 

public : 
MyRegex(regex _reg, StrategieLitteraux* _strategie) : reg(_reg), strategie(_strategie) {} 
virtual ~MyRegex() {} 
void execute(Pile& pile,const QString& s) { strategie->execute(pile,s); } 
regex getRegex() const {return reg;} 

}; 
/*******************************************************************/ 
#endif // REGEX_H 

そして、私はこのエラーを取得しています:

「正規表現」私は私が「かわからないタイプ

に名前を付けていません私は間違っている。誰にも分かりますか?前に正規表現を使っていましたが、今回は動作させることができません。ありがとう

+3

'std :: regex'が必要です。 –

+1

あなたは 'std :: regex'を探しています。 P.S. 「名前空間を使って」という怪我を避けることをお祝いしたいと思います。 –

+0

ありがとう!私はQtを使っていますし、std :: regexも必要ないようです。私はちょうど "strategie.h"を含める必要があり、それは正規表現を認識した。なぜ私はこのエラーが発生した場合、私はstd :: regexを使用します:) 編集:実際に私が知っている、strategie.hは、 '名前stdを使用して'を使用してcomputer.hが含まれています。私はこの行を削除します。 – Chuck

答えて

3

regexstd名前空間の一部です。 std::regexを使用する必要があります。

+0

ありがとう:)上記の私のコメントを参照してください。 – Chuck

+0

@Chuckあなたの質問は、あなたがそのコメントで表現している問題を反映していません。質問を編集する必要があります。 –

関連する問題