在C++中,泛型編程可以通過模板實現(xiàn)。模板是一種通用的編程技術(shù),它可以讓我們編寫一種算法或數(shù)據(jù)結(jié)構(gòu),而不必關(guān)心具體的數(shù)據(jù)類型。通過模板,我們可以定義一種通用的算法或數(shù)據(jù)結(jié)構(gòu),然后根據(jù)需要實例化具體的數(shù)據(jù)類型。
例如,下面是一個簡單的模板函數(shù),用于交換兩個變量的值:
template <typename T>
void swap(T& a, T& b) {
T temp = a;
a = b;
b = temp;
}
在調(diào)用這個函數(shù)時,可以傳入任意類型的變量,例如:
int x = 5, y = 10;
swap(x, y); // 交換兩個整數(shù)的值
double m = 3.14, n = 2.71;
swap(m, n); // 交換兩個雙精度浮點數(shù)的值
通過模板,我們可以實現(xiàn)通用的算法或數(shù)據(jù)結(jié)構(gòu),從而提高代碼的復(fù)用性和靈活性。需要注意的是,模板在編譯時會進行實例化,因此會產(chǎn)生對應(yīng)于不同類型參數(shù)的具體代碼。