C++程序,使用函数模板但为何没有交换数值

#include<iostream>usingnamespacestd;template<typenameT>voidSwap(Tx,Ty){Tz;z=x,x=y,x=z... #include<iostream>
using namespace std;
template<typename T>
void Swap(T x,T y)
{ T z;
z=x,x=y,x=z;
}
int main ()
{ cout<<"请按一定的顺序输入两个数"<<endl;
int x,y;
cin>>x>>y;
Swap(x,y);
cout<<x<<" "<<y<<endl;
float a=321,b=123,c=0;
Swap(a,b);
cout<<a<<" "<<b<<endl;
system ("pause");
return 0;
}
展开
 我来答
V哥在世
2014-11-18 · 超过31用户采纳过TA的回答
知道答主
回答量:116
采纳率:0%
帮助的人:56.3万
展开全部
使用函数之前,好像要指定类型吧
调用的时候不是应该这样的吗,Swap<int>(a,b);

上面说的有理,
改变的事地址上的数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
laobaitu0322
2014-11-18 · TA获得超过744个赞
知道小有建树答主
回答量:900
采纳率:33%
帮助的人:644万
展开全部
函数的形参在函数中改变不影响外面的变量
追问
按这个方式要如何才能交换呢
追答
template<typename T>
void Swap(T& x,T& y)                                  
{ T z;
      z=x,x=y,x=z;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-11-18
展开全部
template<typename T>
void Swap(T& x,T& y)
{ T z;
z=x,x=y,x=z;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式