首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

可以把enum {}中的英文换成汉语言吗

2013-07-01 
可以把enum {}中的英文换成中文吗?**************************类模块head.h*****************************

可以把enum {}中的英文换成中文吗?


**************************类模块head.h*****************************
#include<iostream>
using namespace std;
enum   c_h_s{cloth,hammer,scissors,game,help,instructions,quit};
class  Game   //构造类
{
   public:
   Game();
   enum c_h_s select();
   enum c_h_s mach();
       void instruct();
   int  won(enum c_h_s,enum c_h_s);
   void gamee(int,int,int);
   void helpp();  
   void solution();
   private:
   int  win;
   int  lose;
   int  tie;
   enum c_h_s player;
   enum c_h_s machine;

};

*****************成员函数定义模块define.cpp************************
#include<iostream>
using namespace std;

Game::Game()  //初始化数据成员
{
win=0;
lose=0;
tie=0;
}

void Game::instruct()
{
cout<<endl;
cout<<""<<"**** 石头   剪刀   布 **** "<<endl;

cout<<"在这个游戏中"<<endl;
cout<<"c 表示布"<<endl;
cout<<"h 表示石头"<<endl;
cout<<"s 表示剪刀."<<endl;
cout<<"游戏者和机器都只选择 c,h,s中的一个.如果二者的选择相同"<<endl;
cout<<"那么这一局就是平局.此外:"<<endl;
cout<<""布覆盖石头"(布获胜)."<<endl;
cout<<""石头破坏剪刀"(石头获胜)."<<endl;
cout<<""剪刀剪碎布"(剪刀获胜)."<<endl;
       cout<<endl;
cout<<"还有其它的选择是:"<<endl;
cout<<"g 表示游戏的结果(至今获胜的次数)"<<endl;
cout<<"p 可获得帮助"<<endl;
cout<<"i 可获得游戏方法的指导信息"<<endl;
cout<<"q 表示退出游戏."<<endl;
cout<<"这个游戏一直重复到游戏者选择 q 为止."<<endl;
cout<<"祝你好运!"<<endl;   //游戏结束
}

enum c_h_s  Game::select()
{
char c;
enum c_h_s p;
cout<<endl;
cout<<"请选择 c,h,或s:";//提示用户输入字符
while((c=getchar())==' '||c=='\n'||c=='\t');
switch(c) {
case 'c':
p=cloth;
break;
case 'h': p=hammer;
break;
case 's': p=scissors;
break;
case 'g': p=game;
break;
case 'i': p=instructions;
break;
case 'q': p=quit;


break;
default:  p=help;
break;
}
return(p);
}
enum c_h_s  Game::mach()
{
static int i;
i=++i%3;
return((i==0)?cloth:((i==1)?hammer:scissors));
}
void Game::gamee(int win,int lose,int tie)
{
cout<<endl;
cout<<"游戏结果如下:";
cout<<endl;
cout.width(7);
cout<<"你获胜的次数是:"<<win<<endl;
cout.width(7);
cout<<"我获胜的次数是:"<<lose<<endl;
cout.width(7);
cout<<"平局的次数为:  "<<tie<<endl;
cout.width(7);
cout<<"游戏的总次数是:"<<win+lose+tie<<endl;
}

void Game::helpp()
{
cout<<endl;
cout<<"你可以输入下列的字符:"<<endl;
cout<<"c 表示布"<<endl;
cout<<"h 表示石头"<<endl;
cout<<"s 表示剪刀"<<endl;
cout<<"g 查看游戏结果"<<endl;
cout<<"p 打印出这些信息"<<endl;
cout<<"i 重新打印出游戏指导信息"<<endl;
cout<<"q 退出游戏"<<endl;
}

int Game::won(enum c_h_s player,enum c_h_s machine)
{
int victory;
if(player==cloth)
victory=machine==hammer;
else if(player==hammer)
victory=machine==scissors;
else victory=machine==cloth;
return(victory);
}

void Game::solution()
{
instruct();
while((player=select())!=quit)
switch(player)
 {
case cloth:
case hammer:
case scissors:
machine=mach();
if(player==machine) 
{
++tie;
cout<<endl;
cout<<"平局";
}
else if(won(player,machine))
 {
++win;
cout<<endl;
cout<<"你获胜";
}
else {
++lose;
cout<<endl;
cout<<"我获胜";
}
case game:
gamee(win,lose,tie);
break;
case instructions:
instruct();
break;
case help:
helpp();
break;
}
gamee(win,lose,tie);
cout<<endl;
cout<<endl;
cout<<"BYE!"<<endl;
}


********************主函数定义模块main.cpp**************************

#include<iostream>
using namespace std;

int main()
{
Game g;
g.solution();
return  0;
}


[解决办法]
VC9,VC10:


#include <iostream>
#include <stdlib.h>
enum {否,是};

int main(int argc, char *argv[])
{
  cout<<是<<否<<endl;
  system("PAUSE");
  return 0;
}

//输出
10
请按任意键继续. . .
[解决办法]
即便可以,用中文无意义,而且效率不高,也不好维护。

热点排行