当前位置: 首页 > news >正文

影视怎么建设网站物联网开发用什么语言

影视怎么建设网站,物联网开发用什么语言,石家庄建设工程信息网站,团购网站建设案例文章目录 一、函数模板1.什么是函数模板#xff1f;2.函数模板格式3.函数模板原理4.函数模板实例化#xff08;1#xff09;隐式实例化#xff08;2#xff09;显示实例化 二.类模板1.类模板定义格式2.类模板的实例化 总结 一、函数模板 1.什么是函数模板#xff1f; 函… 文章目录 一、函数模板1.什么是函数模板2.函数模板格式3.函数模板原理4.函数模板实例化1隐式实例化2显示实例化 二.类模板1.类模板定义格式2.类模板的实例化 总结 一、函数模板 1.什么是函数模板 函数模板简单来说就是一个模板与函数参数的类型无关是一个模子不是真正的函数实例化的函数会根据实参的类型自动推导类型。 2.函数模板格式 templatetypename T1,typename T2...返回值类型 函数名(参数列表) {}3.函数模板原理 函数模板是一个模板并不是真正的函数它是根据传递过来的实参的类型实例化一个具体的函数相当于我们将重复的事情交给了编译器来操作。 比如说 templatetypename TT Add(const T a1, const T a2) {return a1 a2; }int main() {int a 10, b 20;double c 3.14,d 2.11;cout Add(a, b) endl;cout Add(c, d) endl; return 0; }我们定义了一个加法函数的函数模板来进行加法操作函数模板会根据我们传递的实参的类型自动实例化出不同的Add函数这些函数之间构成函数重载。 4.函数模板实例化 1隐式实例化 举一个简单的例子: 在我们定义的函数模板中只给定一个模板参数类型但是我们可能会有两个不同的实参类型。 templatetypename TT Add(const T a1, const T a2) {return a1 a2; }int main() {int a 10;double b 20.3;cout Add(a, b) endl;return 0; }对于只有一个类型的函数模板却同时出现了两种不同类型的实参编译器就无法确认到底用哪个实参类型实例化了。 解决办法 int main() {int a 10;double b 20.3;cout Add((double)a, b) endl;cout Add(a, (int)b) endl;//可能存在精度丢失的情况return 0; }隐式类型转换就可以解决编译器无法识别的情况。 2显示实例化 templatetypename TT Add(const T a1, const T a2) {return a1 a2; }int main() {int a 10;double b 20.3;cout Add(a, b) endl;return 0; }对于这个案例还有一种解决方案 int main() {int a 10;double b 20.3;cout Addint(a, b) endl;return 0; }这样的方法叫做显式实例化实际生活中我们很少会遇到需要显式实例化的情况不过对于下面的情况就必须要显式实力化。 templateclass T T* Alloc(int n) {return new T[n]; }int main() {Allocdouble(10);return 0; }在这样的情况下我们没有使用函数模板类型所以仅仅传递实参n无法推导T的类型这种情况下必须要使用显式实例化。 二.类模板 1.类模板定义格式 templateclass T1, class T2, ..., class Tn class 类模板名 {// 类内成员定义 };2.类模板的实例化 注意 普通类的类型和类名相同 模板类的类型和类名不同 类模板实例化与函数模板实例化不同类模板实例化需要在类模板名字后跟然后将实例化的类型放在中即可。 类模板名字不是真正的类而实例化的结果才是真正的类。 比如 // string类名stringint才是类型 stringint s1; stringdouble s2;1.不管是类模板还是函数模板其作用范围就是紧跟着的类/函数。 也就是看{} 2.类模板中函数放在类外进行定义时需要加模板参数列表 比如 templatetypename T class Stack { public:Stack(size_t capacity 3);void Push(const T data); // 其他方法...~Stack(){if (_array){delete[]_array;_capacity _size 0;}}private:T* _array;int _capacity;int _size; };//缺省参数不能给在函数定义只能在声明给缺省值 //模板的作用域就是专门给一个函数或者一个类用的 //可以看{}的作用范围是那里模板的作用范围就是哪里。 templatetypename T StackT::Stack(size_t capacity) {_array new T[capacity];_capacity capacity;_size 0; }templatetypename T void StackT::Push(const T data) {// CheckCapacity();_array[_size] data;_size; } 函数在类外面进行定义时需要加类模板的参数列表。 注意不建议模板实例化出来的函数的声明和定义分离。 注意不建议模板实例化出来的函数的声明和定义分离。 注意不建议模板实例化出来的函数的声明和定义分离。 上面的例子仅仅是为了演示。 总结 本文讲述了函数模板和类模板的相关问题。
http://www.hkea.cn/news/14381380/

相关文章:

  • 世界500强企业愿景成都网站建设优化公司电话
  • 网站转微信小程序哪个网站做的简历最好
  • 把网站做成app多少钱建网站 主流软件
  • 品牌展示型网站有哪些福建泉州做网站公司
  • 做微信营销网站建设seo顾问公司
  • 网站seo策划百度百家官网入口
  • 做下载网站用什么程序好公司网络营销推广软件
  • 英语网站的栏目名称wordpress更换服务器ip
  • 大连h5建站wordpress如何添加搜索到主菜单
  • 海南省建设厅网站首页昆明网站建设公司排名
  • 福州建站价格淘宝上网站开发
  • 织梦 音乐网站做网站怎么注册营业执照
  • 西安道桥建设有限公司网站网站开发亿玛酷给力5
  • 网站去掉index.html团队建设
  • 网站运行费用一般多少微信做单网站
  • 建设银行网站特色跨境电商是不是坑
  • 织梦网站主页代码在后台怎么改用织梦做的网站好不好
  • 做pcr查基因序列的网站discuz做电影网站
  • 新网站建设服务公司网站做违法的事情投诉
  • wordpress weixin宁波seo关键词如何优化
  • 网上做公益的网站电子商务公司是做什么的
  • 网站建设最基础的是什么意思网站建设总结与心得体会
  • 网站建设内部因素自己开公司 自己做网站
  • 在哪一个网站做社保申报wordpress茶叶模板
  • 郑州网站建设找智巢自定义wordpress页面模板
  • 学生个人网站建设方案书框架栏目怎么给网站做快照
  • 企业网站建设cms系统做网站如何报价
  • 房子网站有哪些wordpress 主题 百科
  • 网站建设用哪个好wordpress 糗百
  • 学校网站建设开发商厦门集团网站设计公司