91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據結構--泛型編程

發布時間:2020-08-23 04:26:59 來源:網絡 閱讀:266 作者:淡淡_小孩 欄目:開發技術

一 泛型編程的概念

泛型的定義主要有以下兩種:
1.在程序編碼中一些包含類型參數的類型,也就是說泛型的參數只可以代表類,不能代表個別對象。(這是當今較常見的定義)
2.在程序編碼中一些包含參數的類。其參數可以代表類或對象等等。(人們大多把這稱作模板)不論使用哪個定義,泛型的參數在真正使用泛型時都必須作出指明。
一些強類型編程語言支持泛型,其主要目的是加強類型安全及減少類轉換的次數,但一些支持泛型的編程語言只能達到部分目的。
泛型編程是一種不考慮具體數據類型的編程方式,可以由下面的Swap函數來進行了解

   void Swap(T& a,T& b)
     {
         T t=a;
         a=b;
         b=t;
     }

在這個例子中,Swap泛型的寫法中的T不是一個具體的數據類型,而是泛指任意的數據類型

二 C++中的函數模板

一種特殊的函數可用不同的類型進行調用,看起來和普通的函數很相似,區別是類型可被參數化

  template<typename T>
   void Swap(T& a,T& b)
     {
         T t=a;
         a=b;
         b=t;
     }

函數模板的語法規則:
template關鍵字用于聲明開始進行泛型編程
typename關鍵字用于聲明泛指類型
函數模板使用有自動類型推導使用和具體類型調用兩種

int a=0;
int b=1;
Swap(a,b);//自動推導

float c=2;
float d=3;
Swap<float>(c,d);//顯示調用

三 C++中的類模板

C++中的類模板以相同的方式處理不同的類型,在類聲明前使用template進行標識
<typename T>用于說明類中使用的泛指類型T

template <typename T>
class Book
{
    public:
        T Bo(T a,T b);
};

類模板的應用
1.只能顯示指定具體類型,無法自動推導
2.使用具體類型<type>定義對象

Book<int>book1;
Book<string>book2;
Book<char>book3;
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

镇江市| 刚察县| 新蔡县| 手机| 维西| 高雄市| 府谷县| 临邑县| 伊金霍洛旗| 安仁县| 晋城| 北海市| 抚顺市| 长寿区| 呼伦贝尔市| 德钦县| 二连浩特市| 县级市| 宁波市| 临泉县| 古蔺县| 翁源县| 绥江县| 岑巩县| 江油市| 项城市| 白山市| 海原县| 安龙县| 鄢陵县| 土默特右旗| 兰坪| 阳西县| 桐柏县| 青铜峡市| 绥江县| 临海市| 兴和县| 措勤县| 汾阳市| 内江市|