阅读量:0
在C++中,模板编程是一种强大的编程技术,它允许我们编写通用的代码,可以适应不同类型的数据。为了实现通用数据交换,我们可以使用模板函数。下面是一个简单的示例:
#include<iostream> // 定义一个模板函数,用于交换两个变量的值 template<typename T> void swap(T& a, T& b) { T temp = a; a = b; b = temp; } int main() { int a = 5, b = 10; std::cout << "Before swap: a = " << a << ", b = " << b << std::endl; swap(a, b); std::cout << "After swap: a = " << a << ", b = " << b << std::endl; double c = 3.14, d = 2.71; std::cout << "Before swap: c = " << c << ", d = " << d << std::endl; swap(c, d); std::cout << "After swap: c = " << c << ", d = " << d << std::endl; return 0; }
在这个示例中,我们定义了一个名为swap
的模板函数,它接受两个类型为T
的引用参数。这意味着我们可以使用任何类型的变量来调用这个函数,包括内置类型(如int
和double
)以及用户自定义类型。
在main
函数中,我们首先交换两个整数变量的值,然后交换两个双精度浮点数变量的值。这个程序将输出以下结果:
Before swap: a = 5, b = 10 After swap: a = 10, b = 5 Before swap: c = 3.14, d = 2.71 After swap: c = 2.71, d = 3.14
这个示例展示了如何使用模板编程实现通用数据交换。当然,在实际编程中,你可能会遇到更复杂的数据结构和类型,但基本原理仍然相同:使用模板函数或模板类来编写通用的代码。