在模板函数中“C4430:缺少类型说明符 - 假定为int”

时间:2013-05-19 20:04:40

标签: c++ templates visual-studio-2012

这段代码很简单,不应该编译吗?我真的迷失了这个。

#include <iostream>

template<typename T> foo(T f)
{
    std::cout << f << std::endl;
}

int main()
{
    foo(3);

    return 0;
}

错误:

main.cpp(6): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

1 个答案:

答案 0 :(得分:10)

您错过了foo的返回类型。大概,你想要:

                     vvvv
template<typename T> void foo(T f)
{                    ^^^^
    std::cout << f << std::endl;
}