同实现中，模板编译模式（模板初始化的方法）大致可分为三种：ISO C++标准规定，如果隐式实例化模板，则模板的成员函数一直到引用时才被实例化；如果显式实例化模板，则模板所有成员立即都被实例化，所以模板的声明与定义在此处都应该是可见的，而且在其它程序文本文件使用了这个模板实例时用编译器选项抑制模板隐式实例化，或者模板的定义部分是不可见的，或者使用"template<> type FUN_NAME(type list)"的语句声明模板的特化但不实例化。g++的模板实例化，目前分为三种方式：VC++7