私はg++でのコンパイルの初心者です。ただし、Visual Studioを使用している場合は、次のコードで問題ありません。
template <typename ValueType>
class ExprBase {
private:
ExprBase () {}
protected:
ValueType value;
public:
explicit ExprBase (const ValueType& v) : value(v) {}
virtual Value<ValueType> operator () (const map<const char*, ValueType>& values) const {
return Value<ValueType>(ValueType(), "");
}
};
template <typename ValueType>
class Const : public ExprBase<ValueType> {
public:
Const (const ValueType& v) : ExprBase<ValueType>(v) {}
virtual Value<ValueType> operator () (const map<const char*, ValueType>& values) const {
return Value<ValueType>(value, "");
}
};
エラーは次のとおりです:「'value'undeclared」。g ++でコンパイルできるようにするには何を修正する必要がありますか?手伝ってくれてありがとう