Templat Kelas dalam Templat Fungsi C++
Templat fungsi C++ menyedari templat kelas dan menggunakannya sebagai jenis parameter. Ini membolehkan anda mencipta fungsi generik yang berfungsi dengan pelbagai jenis dan struktur data.
Syntax
template<typename T> void func(const T& arg1, const T2& arg2, ...);
di mana:
T
是函数参数的类型模板。arg1
, arg2
及后续参数是函数的实际参数。实战案例
考虑一个打印任何类型的一对值的函数:
template <typename T1, typename T2> void print_pair(const T1& a, const T2& b) { std::cout << a << " " << b << std::endl; }
我们可以将这个函数模板应用于不同的类型组合:
int main() { print_pair(1, 2.5); // 打印整数和浮点数 print_pair("Hello", "World"); // 打印字符串 return 0; }
在第一个示例中,T1
被推导为 int
,T2
被推导为 double
。在第二个示例中,T1
和 T2
都被推导为 std::string
arg1
, arg2
dan parameter seterusnya ialah parameter sebenar fungsi tersebut. Contoh Praktikal
int
dan T2
disimpulkan kepada double
. Dalam contoh kedua, kedua-dua T1
dan T2
disimpulkan kepada std::string
. Atas ialah kandungan terperinci Bagaimana untuk menggunakan templat kelas dalam templat fungsi C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!