场景:
1. 模板在C++里是必不可少的语法特性,特别对代码重用,算法,自定义数据结构编码时能极大的减少重复代码,减少代码维护量.
2.以下代码学习了<<c++ primer 3rd>> 16.1,16.2,16.3章节.
代码:test_template.cpp
#include <stdlib.h>
#include <string>
#include <iostream>
#include <string.h>
//1.向前声明
template <typename Type> class QueueItem;
//2.类模板声明 template <class or typname keyword,parameter list>
//5.模板类型可以有默认值.
//6.非类型参数的表达式必须是常量表达式
template <typename Type,int id,typename Info = std::string>
class Queue
{
public:
Queue(Info info):front_(NULL),last_(NULL),size_(0),info_(info),id_(id){}
Type& Front();
void Pop();
void Push(const Type& val);
bool IsEmpty()