C++学习笔记30:模板与型式参数化
生活随笔
收集整理的這篇文章主要介紹了
C++学习笔记30:模板与型式参数化
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
轉(zhuǎn)型操作
- 接受目標型式作為模板參數(shù)
- Programmer *p = dynamic_cast<Programmer*>(e)
模板工作原理
- 使用template<typename T>定義函數(shù)模板或者類模板
- 體化(instantiation):使用特定的模板實際參數(shù),生成真正的模板函數(shù)和模板類
- 編譯模板類和模板函數(shù),生成最終的程序代碼
模板代碼
- 一般放在頭文件中:編譯器需要看到模板源文件
模板的特點:
- 抽象性:模板代碼高度抽象,是函數(shù)和類的模范
- 安全性:型式檢查能夠發(fā)現(xiàn)大多數(shù)型式失配問題
- 通用性:函數(shù)和類模板定義一次,按需生成函數(shù)和類的實體
- 易用性:接口相對直觀且高度一致
- 效率:減少代碼冗余,提升編程效率;通過編譯優(yōu)化,提升程序的執(zhí)行效率
模板用途
- 函數(shù)模板:構(gòu)造函數(shù)集,實現(xiàn)不依賴特定數(shù)據(jù)結(jié)構(gòu)的抽象算法
- 類模板:構(gòu)造類集,實現(xiàn)抽象數(shù)據(jù)結(jié)構(gòu)
- 元編程:構(gòu)造在編譯期執(zhí)行的運算,提升程序的執(zhí)行效率
?
轉(zhuǎn)載于:https://www.cnblogs.com/hujianglang/p/6250446.html
總結(jié)
以上是生活随笔為你收集整理的C++学习笔记30:模板与型式参数化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 枚举类型 构造函数及用法
- 下一篇: Fuzz的那些事