C++入門經典-例9.3-類模板,簡單類模板

來源:互聯網
上載者:User

標籤:定義   應用   關鍵字   函數定義   一個   display   template   names   代碼   

1:使用template關鍵字不但可以定義函數模板,而且可以定義類模板。類模板代表一族類,它是用來描述通用資料類型或處理方法的機制,它使類中的一些資料成員和成員函數的參數或傳回值可以取任意資料類型。類模板可以說是用類產生類,減少了類的定義和數量。

2:類模板的一般定義形式如下:

template <類型形式參數表> class 類模板名

{

   ...//類模板體

}

    類模板成員函數的定義形式如下:

template <類型形式參數表>

傳回型別 類模板名 <類型名表>::成員函數名(形式參數列表)

{

    ...//函數體

}

    其中,template是關鍵字,類型形式參數表與函數模板的定義相同。類模板的成員函數定義時的類模板名譽類模板定義時要一致。類模板不是一個真是的類,需要重建類,產生累的形式如下:

類模板名<類型實在參數表>

    用新產生的類定義對象的形式如下:

類模板名<類型實在參數表>對象名

    其中,類型實在參數表應與該類模板中的類型形式參數表匹配。用類模板產生的類稱為模板類。類模板和模板類不是同一個概念,類模板是模板的定義,不是真是的類,定義中要用到型別參數,模板類本質上與普通類相同,它是類模板的型別參數執行個體化之後得到的類。

3:類模板中的類型形式參數表可以在執行時指定,也可以在定義類模板時指定。執行個體代碼如下:

// 9.3.cpp : 定義控制台應用程式的進入點。//#include "stdafx.h"#include <iostream>using namespace std;template<class T1,class T2>class MyTemplate{    T1 t1;    T2 t2;    public:        MyTemplate(T1 tt1,T2 tt2)        {t1 =tt1, t2=tt2;}        void display()        { cout << t1 << ‘ ‘ << t2 << endl;}};void main(){    int a=123;    double b=3.1415;    MyTemplate<int ,double> mt(a,b);    mt.display();}
View Code

運行結果:

   

 

C++入門經典-例9.3-類模板,簡單類模板

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.