У меня есть этот класс:
template<typename T> class Parser
{
public:
Parser() : count(0) {}
virtual void parse(const string&);
void get_token(void);
private:
T result;
char token;
string expression;
int count;
};
теперь, если бы класс не был универсальным, если бы было result
, скажем, double
, я бы использовал этот метод для обнаружения чисел.
while((strchr("1234567890.",token))
{
/* add token to a "temp" string */
/* etc. etc. */
}
result = atof(temp.c_str());
Но поскольку result
является общим, я не могу использовать такие методы, как atof
, atoi
и т. Д.
Что мне делать?