STL_2: 模板_2_函数模板
来源:互联网 发布:js字符串除法 编辑:程序博客网 时间:2024/04/27 10:15
tempalte<typename T> const T& min(const T& a,const T& b){return (a<b)? a:b;}int z=min<int>(i,j);
- min(i,j)—-用int特化
函数模板的类型推断
tempalte<typename T,typename U> const T& min(const T& a,const U& b){return (a<b)? a:b;}int z=min<int.double>(i,j);
函数模板的重载
template<typename T> const T& min(const T& a,const T& b) //min(1,2)--自动类型推断{return (a<b)? a:b;}const char* min(const char *a,const char* b){return strcmp(a,b)<0 ? a:b;}double min(double x,doule y) //min(1.0,2.0){return (x<y)?x:y}
生成的函数模板地址作为参数
template<typename T> void f(T*) {}void h(void (*pf)(int *)) {}template <typename T> void g(void (*pf)(T*)) {}int main(){ h(&f<int>); f(&f); //类型推导 g<int>(&f<int>); g(&f<int>); g<int>(&f);}
函数模板的半有序
//优先级顺序从上到下变低template<class T> void f(T);template<class T> void f(T*);template<class T> void f(const T*);
模板特化
显示特化
tempalte<class T>const T& min(const T &a,const T &b){.....}----//特化(const char*)tempalte<>const char* const& min<const char*> (const char* const &a,const char* const &b){.....}min(s1,s2);min<>(s1,s2);
< const char*>-特化类型;用const char* 代替 T
半特化
- 类模板—半特化
代码的膨胀
0 0
- STL_2: 模板_2_函数模板
- STL_2
- 函数模板、类模板
- 模板--->函数模板
- 模板函数,模板类
- 模板之函数模板
- C++ 模板->模板函数
- 类模板(函数模板)
- 模板---函数模板
- 函数模板 类模板
- 浅谈模板----函数模板
- 关于模板--模板函数
- 函数模板、类模板
- 模板之函数模板
- 模板函数
- 函数模板
- 函数模板
- 函数模板
- 使用Promise解决多层异步调用的简单学习
- hdu 1301 Jungle Roads (最小生成树)
- strcpy,strcmp,strcat,strlen的实现以及大概介绍(下)
- android-Hardware Acceleration
- hdu1069 Monkey and Banana
- STL_2: 模板_2_函数模板
- ES6个人学习整理(三)——解构赋值
- Android图文详解属性动画
- HDU 3926 Hand in Hand(判断同构)
- Android启动出现白屏的解决办法(theme)
- bcache配置方法 - Linux内核之bcache 1.1
- Java @SuppressWarnings
- Pascal triangle (杨辉三角)制表符
- Java回炉之IO流(二)使用规律