"Class<>"在C++中的含义是什么?
What is the meaning of "Class<>" in C++?
我对C++并不陌生,但我也没有用它进行过太多编码。我最近遇到了在变量声明中包含"<>"的代码。以下是的外观
MyClass<> *instancePtr;
我确信这与模板有关,但我在网上找不到任何东西。有人能帮我吗?代码是什么意思?
感谢任何帮助,谢谢
这意味着MyClass
是一个模板,MyClass
模板声明为所有模板参数提供默认参数。
例如,如果模板声明如下
template <typename T = int, typename U = double, int N = 5> class MyClass {
...
};
然后
MyClass<> *instancePtr;
相当于
MyClass<int, double, 5> *instancePtr;
请注意,当您引用模板类时,<>
始终是必需的,即使<>
之间没有任何内容。你不能只说
MyClass *instancePtr;
即使所有模板参数都有默认参数。(一些较旧的编译器支持这种不正确的用法。)
相关文章:
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 这是什么意思:"class DATA_C data_container"
- "template <class _Tp, class _Alloc = __STL_DEFAULT_ALLOCATOR(_Tp) >"=是什么意思?
- "template<class C> void mini(C &a4, C b4) { a4 = min(a4, b4); }"定义的含义是什么?
- 是什么<false>意思?在"class ScopedBytesRW : public ScopedBytes<false>"
- [class.union]/3 注释中"Absent default member initializers, ..."的句子的目的是什么?
- 诸如class bar *bar之类的指针的名称是什么?
- "class CLASS_EXPORT IKLogin_Export"的含义是什么
- C++"Register a class"是什么
- 构造函数中的"class"是什么意思?
- "enum class" Visual C++ 2012 中是什么意思?
- C++:除虚函数外," undefined reference to 'typeinfo for [class name]' "的原因是什么
- "padding class 'Tester' with 4 bytes"警告是什么意思?
- 什么是Windows 'class name'开发的应用程序的?
- "storage-class information" __declspec() 是什么意思?
- 这个错误是什么意思" expression must have pointer-to-class type"?
- 错误是什么意思"expression must have class type"?
- "unspecialized class template can't be used as a template argument"是什么意思?
- 警告'RTTI symbol not found for class'是什么意思?
- C++`int*class::*member=NULL`编译,原因是什么