c++ - 为什么我缺少模板参数?

标签 c++

我创建了一个模板并给它一个默认类型:

template <typename T = unsigned>
class Network {
    // ...
}

但是,当我尝试实例化一个 Network 对象时

Network nw;

我得到一个错误:

app.cpp:60:9: error: missing template arguments before 'nw'

第 60 行是 Network nw;。如果我指定类型 T 应该默认为 unsigned 而没有明确提及类型,为什么我会缺少模板参数?

最佳答案

它仍然是一个模板类型,所以它仍然需要尖括号:

Network<> nw;

烦人吗?是的。

关于c++ - 为什么我缺少模板参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15015641/

相关文章:

c++ - C++ 中的 "was not declared in this scope"

c++ - 使用 Mat::at 遍历图像时崩溃

c++ - 非复制 std::shared_ptr<boost::any>?

c++ - 当你用C++写类的时候,你什么时候写自己的析构函数?

c++ - 无法从 .cpp 访问 .h 中声明的私有(private)成员

c++ - 区分静态数组,指针和结构的C++模板

c++ - VST 前瞻和 setInitialDelay()

c++ - 预期 '(' 跟随 'WINGDIAPI'

c++ - 在 C++ 中,如何将文件正确加载到比 char 数据类型更宽的数组中?

c++ - 使用 __debugbreak 在 GoogleTest 中捕获自定义断言