求助:
#include <iostream>using namespace std;
class Time
{ public:
void set_time();
void show_time();
//private:
int hour;
int minute;
int sec;
};
int main()
{ Time t;
// t.check_time();
t.set_time();
if((t.hour>24)||(t.minute>60)||(t.sec>60))
cout<<"error!"<<endl;
else t.show_time();
return 0;
}
void Time::set_time()
{ cin>>hour;
cin>>minute;
cin>>sec;
}
//void Time::check_time()
//{ int hour;
// int minute;
// int sec;
// if(hour>24||minute>60||sec>60)
// cout<<"error!"<<endl;
//}
void Time::show_time()
{ cout<<hour<<":"<<minute<<":"<<sec<<endl;
}
这个程序是显示时间的,当错误的时候就不显示。
但是我在这里吧clss里面的所有元素都写成公共的才可以编译通过。
有没有什么方法,可以保持时分秒即为私有声明。又不会编译出错的。