// ConsoleApplication5.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
class Date {
public:
int day;
int month;
int year;
public:
void show();
// Date():year(1900),month(1),day(1){}
Date() {};
void init(int, int, int);
// Date operator +(Date&);
// Date operator =(Date);
Date operator ++();
Date operator ++(int);
};
//时间类
class Time {
public:
int Hour;
int Minute;
int Second;
void show();
Time() :Hour(12), Minute(0), Second(0) {}
void init(int x, int y, int z);
Time operator +(Time&);
Time operator =(Time);
Time operator ++();
};
void Date::init(int y, int m, int d) {
this->year = (y > 1900 && y <= 2200) ? y : 1900;
this->month = (m >= 1 && m <= 12) ? m : 1;
this->day = (d >= 1 && d <= 31) ? d : 1;
}
void Time::init(int h, int m, int s) {
this->Hour = (h >= 1 && h <= 24) ? h : 12;
this->Minute = (m >= 0 && m <= 59) ? m : 0;
this->Second = (s >= 0 && s <= 59) ? s : 0;
}
void Date::show() {
std::cout << year << "年" << month << "月" << day << "日" << std::endl;
}
void Time::show() {
std::cout << Hour << "时" << Minute << "分" << Second << "秒" << std::endl;
}
int main()
{
Date data = Date();
Time time = Time();
while (true)
{
std::cout << "选择功能";
std::cout << "1.初始化日期";
std::cout << "2.显示日期";
std::cout << "3.初始化时间";
std::cout << "4.显示时间";
int k;
std::cin >> k;
if (k == 1)
{
int year, month, day;
std::cout << "输入年:";
std::cin >> year;
std::cout << "输入月:";
std::cin >> month;
std::cout << "输入日:";
std::cin >> day;
data.init(year, month, day);
}
else if (k == 2) {
data.show();
}
else if (k == 3) {
int hour, min, sec;
std::cout << "输入时:";
std::cin >> hour;
std::cout << "输入分:";
std::cin >> min;
std::cout << "输入秒:";
std::cin >> sec;
time.init(hour, min, sec);
}
else if (k == 4)
{
time.show();
}
else
{
}
}
std::cout << "Hello World!\n";
}
代码如下,如有帮助,请立马采纳一下,谢谢。
//菜单类
class menu
{
public:
menu(){}
void login();
void register();
void exit();
void run();
};
void menu::run()
{
int choic = 0;
int size = sizeof(fm)/sizeof(fm[0]); // 计算功能数组好一共有多少个功能
while(1)
{
cin>>choice;
getchar();
for (int i = 0; i<size;i++)
{
if (choice == fm[i].choice)
{
(this->*fm[i].pf())();
}
}
}
}
void menu::run()
{
int choic = 0;
int size = sizeof(fm)/sizeof(fm[0]); // 计算功能数组好一共有多少个功能
while(1)
{
cin>>choice;
getchar();
for (int i = 0; i<size;i++)
{
if (choice == fm[i].choice)
{
(this->*fm[i].pf())();
}
}
}
}