文字列を数値に変換しようとしています。テンプレートでコンパイルエラー - 呼び出しに一致する関数がありません
error: no matching function for call to ‘stringToNumber(std::string&)’
月の誰もが、私はこのようなエラーを取得し、どのようにそれを修正することになっている理由を教えて:
#include <iostream>
#include <string>
template <typename T>
T stringToNumber(const std::string &s)
{
std::stringstream ss(s);
T result;
return ss >> result ? result : 0;
}
int main()
{
std::string a = "254";
int b = stringToNumber(a);
std::cout << b*2 << std::endl;
}
問題は、私は次のエラーを取得していますということです。そのため、私は、次の方法を見つけましたか?
ありがとうございます。
「T」を推論できないというエラーのように、さらに多くのエラーが存在するはずです。 – chris
std :: stringstreamをスコープに入れるには、上部に '#include'が必要な場合があります。 –
うん、私はそれを固定したら気づいた:) – XNor