C++模板(template)
2017-09-04 08:43
169 查看
template与typename
template与class
template<typename T> void swap(T& t1, T& t2); template<typename T> void swap(T& t1, T& t2) { T tmpT; tmpT = t1; t1 = t2; t2 = tmpT; } int main() { //模板方法 int num1 = 1, num2 = 2; swap<int>(num1, num2); printf("num1:%d, num2:%d\n", num1, num2); return 0; }
template与class
template <class T> class Stack { public: Stack(); ~Stack(); void push(T t); T pop(); bool isEmpty(); private: T *m_pT; int m_maxSize; int m_size; }; template <class T> Stack<T>::Stack(){ m_maxSize = 100; m_size = 0; m_pT = new T[m_maxSize]; } template <class T> Stack<T>::~Stack() { delete [] m_pT ; } template <class T> void Stack<T>::push(T t) { m_size++; m_pT[m_size - 1] = t; } template <class T> T Stack<T>::pop() { T t = m_pT[m_size - 1]; m_size--; return t; } template <class T> bool Stack<T>::isEmpty() { return m_size == 0; } int main() { Stack<int> intStack; intStack.push(1); intStack.push(2); intStack.push(3); while (!intStack.isEmpty()) { printf("num:%d\n", intStack.pop()); } return 0; }
相关文章推荐
- C++ template - 模板的模板参数
- 《Effective Modern C++》读书笔记(1) -- 模板类型推导(template type deduction)
- c++ template(5)模板实战
- 设计模式C++描述----02.模板(Template)模式
- C++中 模板Template的使用 (typename)
- C++ template Day Day Up 第一天 模板编译模式
- C++ 模板(template)(泛型)入门例子
- C++学习笔记36 (模板的细节明确template specialization)和显式实例(template instantiation)
- C++中 模板Template的使用
- 转@关于c++模板template中的typename 和class的区别
- C++ template —— 表达式模板(十)
- C++ Template中关于模板类的成员模板函数显示实例化的问题
- 编译器对C++ 11变参模板(Variadic Template)的函数包扩展实现的差异
- OpenCV 笔记 (C++模板template)
- C++ Template 基础篇(一):函数模板
- C++惯用法:奇特的递归模板模式(Curiously Recurring Template Pattern,CRTP,Mixin-from-above)
- 有关C++模板(template)的编译错误“error LNK2019: 无法解析的外部符号”的分析
- C++ - 成员函数(member function)模板(template) 详解 及 代码
- C++ 模板(template)
- C++ template —— 模板中的名称(三)