模块怎么用

zl0606520 2008-04-01 06:43:20
#include<iostream>
using namespace std;
#include<string>
template<typename T>
void swap(T &a,T &b)
{
T temp=a;
a=b;
b=temp;
}
void main()
{
double dx=3.5,dy=5.6;
int ix=6,iy=7,ia=303,ib=505;
string s1="good",s2="better";
cout<<"double dx="<<dx<<", dy="<<dy<<endl;
cout<<"int ix="<<ix<<", iy"<<iy<<endl;
cout<<"string s1="<<s1<<", s2="<<s2<<endl;
swap(dx,dy);
swap(ix,iy);
swap(s1,s2);
swap(ia,ib);
cout<<"\nafter swap:\n";
cout<<"double dx="<<dx<<", dy="<<dy<<"\n";
cout<<"int ix="<<ix<<", iy="<<iy<<"\n";
cout<<"string s1="<<s1<<",s2="<<s2<<"\n";
}
编译出错,不知道怎么改,请大家帮帮忙!
...全文
69 3 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vitin 2008-04-01
  • 打赏
  • 举报
回复
还有一种方法是去掉 using namespace std; 改为
using std::cout;
using std::endl;
using std::string;
Supper_Jerry 2008-04-01
  • 打赏
  • 举报
回复
名字冲突
独孤过儿 2008-04-01
  • 打赏
  • 举报
回复

#include <iostream>
#include <string>
using namespace std;

template <typename T>
void Swap(T &a,T &b) //换个函数名字,别和库里面的冲突
{
T temp=a;
a=b;
b=temp;
}

int main()
{
double dx=3.5,dy=5.6;
int ix=6,iy=7,ia=303,ib=505;
string s1="good",s2="better";
cout <<"double dx=" <<dx <<", dy=" <<dy <<endl;
cout <<"int ix=" <<ix <<", iy" <<iy <<endl;
cout <<"string s1=" <<s1 <<", s2=" <<s2 <<endl;
Swap(dx,dy);
Swap(ix,iy);
Swap(s1,s2);
Swap(ia,ib);
cout <<"\nafter swap:\n";
cout <<"double dx=" <<dx <<", dy=" <<dy <<"\n";
cout <<"int ix=" <<ix <<", iy=" <<iy <<"\n";
cout <<"string s1=" <<s1 <<",s2=" <<s2 <<"\n";
return 0;
}

发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-04-01 06:43
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下