模板类优势
时间:2023-03-28 04:34:01 | 来源:营销百科
时间:2023-03-28 04:34:01 来源:营销百科
模板类优势:创建一个 类型安全函数来返回两个参数中较小的一个,如果不使用Templates,必须要编写一系列如下的函数:
// min for ints
int min( int a, int b )
return ( a b ) ? a : b;
// min for longs
long min( long a, long b )
return ( a b ) ? a : b;
// min for chars
char min( char a, char b )
return ( a b ) ? a : b;
//etc...
使用templates,可以减少重复部分,形成一个函数:
template class type
type min( type a, type b )
return ( a b ) ? a : b;
模板能够减少 源代码量并提高代码的机动性而不会降低 类型安全。
何时使用模板
模板经常被用来实现如下功能:
创建一个 类型安全的集合类(例如, 堆栈)用来处理各种类型的数据
为函数添加额外的类型检查以避免获得空 指针
合并 操作符重载组来修改类型行为(例如 智能指针smart pointer)
大多数以上应用可以不用模板实现;但是,模板具有以下几个优势:
开发容易。你可以只为你的类或函数创建一个普通的版本代替手工创建特殊情况处理。
理解容易。模板为抽象类型信息提供了一个直截了当的方法。
类型安全。模板使用的类型在编译时是明确的, 编译器可以在发生错误之前进行类型检查。