C C 基礎 模板

2021-10-06 13:03:25 字數 1537 閱讀 3069

同前面的指標函式和函式指標類似,函式模板和模板函式也具有相似的關係,函式模板是乙個模板,模板函式是由函式模板所產生的函式。函式模板需要使用關鍵字template來宣告。

#include

#include

using

namespace std;

//宣告函式模板

template

<

typename t>

void

add(t x, t y)

//乙個全特化的函式模板

函式模板的全特化,是函式模板的一種特殊情況,在該情況下,不需要指明模板函式的引數,而是直接將函式模板給出乙個固定的值。就如上面的**中,實現的功能。

&emsp;類模板就是對類的進一步抽象,和函式模板類似,完成類模板後,只需指定引數,就能完成生成模板類,乙個模板類只能在標頭檔案中實現。

標頭檔案

#pragma once

template

<

class

t>

class

rect

;template

<

class

t>

t rect

::get_data

(int idx)

主函式
#include

類模板的全特化和偏特化與函式模板的全特化類似。並且類模板可以繼承自類模板。

C C 類模板

類模板就是為類宣告一種模板,使得類中的某些資料成員,或某些成員函式的引數,又或者是某些成員函式的返回值可以取任意的資料型別,包括基本資料型別和自定義資料型別。類模板的宣告形式如下 template 模板參數列 類宣告 模板參數列中可以以下兩種模板引數 1.class 識別符號 指明可以接受乙個型別引...

C C 程式設計 類模板

以stack為例學習類模板的使用 stack.hpp pragma once include include template typename t class stack 拷貝建構函式 賦值運算子 stack stackconst stack operator stackconst templat...

快速排序模板(C C )

確定分界點x 調整區間,使得第乙個區間所有數都小於等於x,第二個區間所有數都大於等於x 遞迴處理左右兩邊 include using namespace std const int n 1e5 10 int n int a n void quick sort int a,int l,int r qu...