C++ 模板函数
来源:互联网 发布:软件工程硕士开题报告 编辑:程序博客网 时间:2024/06/05 11:04
1 函数模板的声明
template<typename T> T fuc(T x, int y) { T x; //…… } 如果主调函数中有以下语句: double d; int a; fuc(d,a); 则系统将用实参d的数据类型double去代替函数模板中的T生成函数: double fuc(double x,int y) { double x; //…… } 关键字typename也可以使用关键字class,这时数据类型参数标识符就可以使用所有的C++数据类型。 template<class MatrixT> _b[0] = 0; _b[1] = 4; _b[2] = -2; _b[3] = 0; } template <class Parm, class U> Parm minus( Parm* array, U value ) { typename Parm::name * p; // ok: 指针声明 注意 typename } 3 如同非模板函数一样函数模板也可以被声明为inline 或extern 应该把指示符放 在模板参数表后面而不是在关键字template 前面 // ok: 关键字跟在模板参数表之后 template <typename Type> inline Type min( Type, Type );
void init_les( MatrixT& _A, std::vector< double >& _b)
{
_A(0,0) = 25 ; _A(0,1) = 0 ; _A(0,2) = -15; _A(0,3) = 0 ;
_A(1,0) = 0 ; _A(1,1) = 20; _A(1,2) = -8 ; _A(1,3) = -4;
_A(2,0) = -15 ; _A(2,1) = -8; _A(2,2) = 17 ; _A(2,3) = 0 ;
_A(3,0) = 0 ; _A(3,1) = -4; _A(3,2) = 0 ; _A(3,3) = 4 ;
2 例如如果我们想让函数模板minus()的表达式Parm::name 是个类型名因而使整个表达式是一个指针声明我们应如下修改
- 【c/c++】函数模板和模板函数
- C/C++ 函数模板
- c++:函数模板
- 【C++】函数模板
- 【c++】函数模板
- C语言函数模板
- C++:函数模板
- 【C++】模板函数总结!!!
- C/C++:函数模板与类模板
- [C/C++]模板函数与模板类
- 学习C++模板---模板函数
- Linux C/C++ 模板:函数模板
- C++,template,类模板和函数模板
- C++:函数模板、类模板及其特化
- C++---函数模板与类模板
- C++_函数模板基础知识
- C语言实现函数模板
- C++_函数模板基础知识
- Ubuntu下安装rails
- Qt Model/View 学习笔记 (一)
- vsftpd 500 OOPS: cannot change directory
- "Impossible" is "I’m possible"
- 关于对静态模型(.x)做的地形高度检测的研究(mesh顶点转换数组,射线与模型的相交检测)
- C++ 模板函数
- Qt Model/View 学习笔记 (二)
- 单例模式
- Qt Model/View 学习笔记 (三)
- C++实现 循环日程赛
- 探究PHP底层运行机制
- Qt Model/View 学习笔记 (四)
- 读写XML文件
- 杂谈:分形图的艺术