は、私は次のコードを持って言う:これをコンパイルする
class.hなぜstd :: regexは有効な型ではありませんか?
#ifndef CLASS_H
#define CLASS_H
class Class
{
private:
std::regex* regex;
};
#endif
class.cpp
#include <regex>
#include "class.h"
// ...
は、次のエラーが発生:
error: "regex" in namespace "std" does not name a type
std::regex* regex;
^~~~~
私はしかしできる他の方法でstd :: regexライブラリを使用しますか? GCC 6.1.1で動作します。また、-std = C++ 11フラグを指定して明示的にコンパイルしようとしました。
'class.h 'の' #include 'です。 –
songyuanyao
@PeteBecker 'basic_regex'はクラステンプレートであり、' regex'はクラステンプレートではありません。 – songyuanyao
@songyuanyao私はそれを逃したとは思わない – Jzk