使用函数模板实现swap(交换两个实参变量a和b的值
时间: 2024-03-17 18:46:07 浏览: 15
好的,以下是使用函数模板实现swap的代码:
```c++
template<typename T>
void swap(T& a, T& b) {
T temp = a;
a = b;
b = temp;
}
```
这里使用了模板类型T,它可以代表任意类型,比如int、double、char等等。函数中的&a和&b表示引用变量,这样在函数内部交换a和b的值时,实参变量的值也会跟着改变。
相关问题
c++使用函数模版实现swap交换两个实参变量a和b的值
可以使用如下函数模板实现swap函数来交换两个变量a和b的值:
```
template <typename T>
void swap(T &a, T &b) {
T temp = a;
a = b;
b = temp;
}
```
这个函数模板可以接受任何类型的参数,因为使用了typename关键字来声明类型参数T。在函数体内部,我们创建了一个临时变量temp来保存a的值,然后将a的值设置为b的值,最后将b的值设置为temp的值,即完成了a和b的交换。
使用函数模板实现swap(&x,&y)交换两个实参变量a和b的值
好的,我可以为您提供一个函数模板实现swap(&x,&y)交换两个实参变量a和b的值的代码:
```c++
template<typename T>
void swap(T& a, T& b) {
T tmp = a;
a = b;
b = tmp;
}
```
这个函数模板可以接受任意类型的参数,并且可以交换它们的值。您可以这样调用它:
```c++
int x = 1, y = 2;
swap(x, y);
```
调用后,x的值为2,y的值为1。同样的,您也可以将它用于其他类型的变量,例如:
```c++
double a = 1.0, b = 2.0;
swap(a, b);
```
调用后,a的值为2.0,b的值为1.0。