c++实现模板函数swap
时间: 2023-10-28 20:05:26 浏览: 50
在C++中实现模板函数swap可以使用如下的代码:
```
template<class T>
void my_swap(T& o1, T& o2) {
T temp = o1;
o1 = o2;
o2 = temp;
}
```
注意,在使用模板函数时,需要在前面加上`template<class 类型>`来指定模板类型。上面的代码中,`my_swap`函数可以交换任意相同类型的变量。
相关问题
c++中swap函数
C++中的swap函数用于交换两个变量的值。它是一个模板函数,可以用于不同类型的变量交换。
以下是一个示例代码:
```cpp
#include <iostream>
template <typename T>
void swap(T& a, T& b) {
T temp = a;
a = b;
b = temp;
}
int main() {
int x = 5;
int y = 10;
std::cout << "Before swap: x = " << x << ", y = " << y << std::endl;
swap(x, y);
std::cout << "After swap: x = " << x << ", y = " << y << std::endl;
return 0;
}
```
运行以上代码,输出结果为:
```
Before swap: x = 5, y = 10
After swap: x = 10, y = 5
```
通过调用swap函数,x和y的值被成功交换了。这个函数可以适用于不同类型的变量,如整型、浮点型、字符型等。
C++ 使用模板函数实现Swap( x, y ),函数功能为交换x、y的值。
```
#include <iostream>
template<typename T>
void Swap(T& x, T& y)
{
T temp = x;
x = y;
y = temp;
}
int main()
{
int a = 1, b = 2;
std::cout << "Before swap: a = " << a << ", b = " << b << std::endl;
Swap(a, b);
std::cout << "After swap: a = " << a << ", b = " << b << std::endl;
return 0;
}
```