C 學習記錄(26)泛型(1)

2021-08-21 05:02:59 字數 1425 閱讀 8867

首先介紹泛型的概念,先學習泛型的抽象術語,因為學習泛型的概念對高效使用它是至關重要的。

日常生活中經常用到一些文件模板,它的格式已經寫好,我們只需要填入姓名、日期等資訊即可使用。泛型是c#乙個非常重要的特性,通過這個技術,我們可以定義像文件模板一樣的類模板。

static void main(string args)

//進隊函式

public void enqueue(t item)

else

//出隊函式

public t dequeue()

else

}static void main()

myqueueq1 = new myqueue(20); 此時定義的t就是整型

q1.enqueue(1);

q1.enqueue(2);      ///不用拆箱裝箱

"3");  編譯格式檢查錯誤被直接扼殺在搖籃中。

q1.enqueue(3);      ///程式可讀性更強

q1.enqueue(4);

q1.enqueue(5);

q1.enqueue(6);

for (int i = 0; i < 6; i++)

console.writeline(q1.dequeue());

myqueueq2 = new myqueue(20); 此時定義的t就是整型

q2.enqueue("a");

q2.enqueue("sdsdb");      ///不用拆箱裝箱

q2.enqueue("c");      ///程式可讀性更強

q2.enqueue("d");

q2.enqueue("e");

q2.enqueue("f");

for (int i = 0; i < 6; i++)

console.writeline(q2.dequeue());

}2.定義泛型方法:

定義泛型方法

int x = 60, y = 90;

swap(ref x, ref y);    ///t代表的就是int型別

console.writeline("x=,y=",x,y);

public static void swap(ref t x, ref t y)

3.定義泛型介面:定義泛型介面與定義泛型類所用的技術相同

inte***ce myfarminginte***ce

where t : animal

4.定義泛型委託

public delegate int mydelegate(int op1, int op2);

要定義泛型委託,只需宣告和使用乙個或多個泛型型別引數,例如:

public     delegate     t1     mydelegate(t2 op1, t2 op2)     where     t1: t2;

c 基礎學習1 泛型

整理自慕課西安交通大學的c 程式設計 慕課西安交通大學 c 程式設計 1.1使用泛型的方法 void display t t input 該函式在實際呼叫時,由編譯器自動匹配t的型別 1.2使用泛型的類 class stack 類的宣告 stack int s newstack int 類的例項化注...

C 學習記錄(27)泛型(2)

system.collections.generics命名空間 list和 dictionary兩種型別。1.list list泛型集合型別更加快捷 更易於使用 這樣,就不必像上一章那樣,從collectionbase中派生乙個類,然後實現需要的方法。listmycollection new lis...

003 使用泛型(2 6)

public class array 無引數的建構函式,預設陣列的容量capacity 10 public array 獲取陣列的容量 public intgetcapacity 獲取陣列中的元素個數 public intgetsize 返回陣列是否為空 public boolean isempty...