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

求教啊解决方法

2012-04-27 
求教啊#includeiostream.h#includewindows.h#includestdlib.hclass Clock{int Hourint Minuteint

求教啊
#include<iostream.h>
#include<windows.h>
#include<stdlib.h>


class Clock
{
 int Hour;
 int Minute;
 int Second;
public:
 Clock(int NewHour,int NewMinute,int NewSecond)
 {
 Hour=NewHour;
 Minute=NewMinute;
 Second=NewSecond;
 }

void ShowTime()
 {
 cout<<Hour<<":"<<Minute<<":"<<Second<<endl;
 }


void operator++(int )
 {
 Second++;
 if(Second>=60)
 {
 Second-=60;
 Minute++;
 if(Minute>=60)
 {
 Minute-=60;
 Hour++;
 Hour%=24;
 }
 }
 }
};

void main()
{
 SYSTEMTIME s;
 GetLocalTime(&s);
 Clock clock(s.wHour,s.wMinute,s.wSecond);
 while(1)
 { 
 Sleep(968);
 system("cls");
 clock++;
 clock.ShowTime();
 }

下面这个是什么意思啊
怎么用的啊
void operator++(int )
 

[解决办法]
后置++重载,用法例如 
Clock c;
c++;

那个int是为了和前置++区分开来而加上的占位用的
[解决办法]
运算符重载,后置++,带了int参数。楼主还是系统的看下c++方面的书吧。
[解决办法]
operator为运算符重载...建议楼主看C++ primer;
[解决办法]
后面带int参数还真没注意过
[解决办法]
你看看void operator++(int )这里的定义,这里是重载后置++操作符。
在实现这个重载里,先把second等加1,再处理其他。
如果是前置++操作符的话,就处理完信息,最后再加1.

热点排行