最近在看C++的源码,遇到了很多问题,一点一点进行补充。函数
首先就是遇到template <typename Dtype>。spa
网上解释的很是多,以为比较啰嗦,其实就是一个类型模板。设计
好比咱们要计算两个数的加法,针对不一样类型可能须要设计不一样类型的函数,那么template <typename T>就能够很好的解决这个问题。code
原始解决方法:blog
int sum(int a,int b); double sum(double a,double b); float sum(float a,float b);
可是当用template <typename T>后为:源码
template <typename T> T sum(T a, T b) { return a+b; }
咱们发现,代码变得简单了不少。模板