泛型参数怎么new_泛型编程,你不知道?(基础篇)
生活随笔
收集整理的這篇文章主要介紹了
泛型参数怎么new_泛型编程,你不知道?(基础篇)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
關注“杜明c”,每天進步一點點!
我們學習C++,就常常有人提起泛型編程,什么是泛型編程?我就給大家簡單聊一聊。
摘要-
什么是泛型編程
為什么使用泛型編程
使用方法
泛型編程,簡而言之,就是在編程中使用不明確的數(shù)據(jù)類型,他最大的一個特點就在這個“泛”字,讓一套源碼適用不同類型的元素。那么這個泛型編程具體什么作用呢?比如我們要我們要寫一個求兩個數(shù)的最大值的函數(shù),一般來說我們都這么實現(xiàn)。
int max(int a, int b){ return a>b?a:b;}一旦數(shù)據(jù)的類型發(fā)生改變,那么代碼就得改一改,這依然很好實現(xiàn),利用用函數(shù)的重載就可以實現(xiàn)。
double max(double a,double b){ return a>b?a:b;}為什么要使用泛型編程可是當要求是float型數(shù)據(jù)的時候,我們就需要添加更多的代碼,這無疑增加了很多繁瑣的工作,
這時候函數(shù)模板就派上了用場。
template <typename T> //定義一個類型TT max(T a, T b) //函數(shù)定義{ return a>b?a:b;}cout << max<int>(1,5) << endl;//函數(shù)調用----out----5使用一個函數(shù)模板就可以實現(xiàn)這個函數(shù),讓我們專注于邏輯實現(xiàn),而不是繁瑣的重復工作。
使用方法除了函數(shù)模板之外,我們還可以使用類模板,他們的用法是一樣的。
函數(shù)模板
類模板
那么怎么使用呢?其實也很簡單。
base<int> a(4);cout?<< a.fun() << endl;cout << max<int>(1,4) << endl;----out----44下一章應用篇,說的是使用類模板構造一個vector容器,有興趣的同學可以看看。
留言區(qū)
End
? ? 杜明c
專注C/C++
長按關注總結
以上是生活随笔為你收集整理的泛型参数怎么new_泛型编程,你不知道?(基础篇)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mac系统下用wineskin安装pls
- 下一篇: A Easy Game(FZU 2146