模板功能导致未找到标识符

时间:2011-10-31 02:14:49

标签: c++ templates prototype compiler-errors

我已经创建了这个模板,并将它放在main()上面的.cpp的最顶层,但我仍然得到以下内容

  

错误:C3861:'ConvertNumbertoString':找不到标识符。

以下是模板:

template<class T>
string ConvertNumberstoString(T number)
{
    string outPut;
    stringstream convert;

    convert << number;
    outPut = convert.str();

    return outPut;
}

我知道这对你们大多数人来说可能是一个愚蠢的功能,但这正是我现在所需要的。

我无法弄清楚如何摆脱这个错误,以便我可以在我的程序中使用它。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您想从函数模板中返回一个字符串:

// In your cpp:

template<class T>
string ConvertNumberstoString(const T &number)
{
    stringstream convert;
    convert << number;
    return convert.str();
}

int main()
{
    string s = ConvertNumberstoString(42);
}