公众号:张小飞那些事儿
5-Tricky Basic 5-Tricky Basic
typename前缀 C++默认用::访问的名称不是类,因此必须加上typename前缀,告诉编译器该名字是一个类型,否则会报错 template<typename T> void print(const T& c) {
4-可变参数模板 4-可变参数模板
可变参数模板示例void print() {} // 没有参数时将调用此函数 template<typename T, typename... Types> void print(T firstArg, Types... args)
3-非类型模板参数 3-非类型模板参数
非类型的类模板参数template<typename T, std::size_t Maxsize> class Stack { public: Stack(); void push(const T&); voi
2-类模板 2-类模板
类模板示例template<typename T> class Stack { public: Stack(); Stack(const Stack<T>&); // T是同一类型的类模板才能拷贝 Stac
1-函数模板 1-函数模板
函数模板示例 最简单的例子如下。使用作用域运算符(::)表示指定使用全局命名空间中的 max 模板,而非 std::max #include <iostream> #include <string> template <
3 / 3