#include <iostream>
using namespace std;
const int DAYS = 0x08;
class Date
{
protected:
uint8_t day, month, year;
public:
Date():day(1), month(1), year(00) {} // Initialisierungsliste mit konstante Parameterwerten
// Initialisierungsliste ueber parametrisierten Konstruktor
Date(uint8_t _day, uint8_t _month, uint8_t _year):day(_day), month(_month), year(_year) {}
uint8_t GetDay(); // Methode
};
uint8_t Date::GetDay()
{
return day;
}
class DateString : public Date
{
public:
DateString():Date() {}
DateString(uint8_t _day, uint8_t _month, uint8_t _year): Date(_day, _month, _year) {}
uint8_t GetDay() { return day; }
uint8_t GetNextDay() { return ++day; } // // Um neue Methode erweitert
};
int main()
{
DateString date; // Instanziierung mit Standard Konstruktor und
printf("Day: %d ", date.GetDay()); // Verwenden der Methode GetDay aus Klasse DateString
printf("Next Day: %d\n", date.GetNextDay()); // Verwenden der neuen Methode GetNextDay aus Klasse DateString
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IERBWVMgPSAweDA4OwoKY2xhc3MgRGF0ZQp7CnByb3RlY3RlZDoKCXVpbnQ4X3QgZGF5LCBtb250aCwgeWVhcjsKCnB1YmxpYzoKCURhdGUoKTpkYXkoMSksIG1vbnRoKDEpLCB5ZWFyKDAwKSAge30gLy8gSW5pdGlhbGlzaWVydW5nc2xpc3RlIG1pdCBrb25zdGFudGUgUGFyYW1ldGVyd2VydGVuCgkvLyBJbml0aWFsaXNpZXJ1bmdzbGlzdGUgdWViZXIgcGFyYW1ldHJpc2llcnRlbiBLb25zdHJ1a3RvcgoJRGF0ZSh1aW50OF90IF9kYXksIHVpbnQ4X3QgX21vbnRoLCB1aW50OF90IF95ZWFyKTpkYXkoX2RheSksIG1vbnRoKF9tb250aCksIHllYXIoX3llYXIpIHt9CgogICAgdWludDhfdCBHZXREYXkoKTsJCS8vIE1ldGhvZGUKfTsKCnVpbnQ4X3QgRGF0ZTo6R2V0RGF5KCkKewogICAgcmV0dXJuIGRheTsKfQoKY2xhc3MgRGF0ZVN0cmluZyA6IHB1YmxpYyBEYXRlCnsKcHVibGljOgogICAgRGF0ZVN0cmluZygpOkRhdGUoKSB7fQogICAgRGF0ZVN0cmluZyh1aW50OF90IF9kYXksIHVpbnQ4X3QgX21vbnRoLCB1aW50OF90IF95ZWFyKTogRGF0ZShfZGF5LCBfbW9udGgsIF95ZWFyKSB7fQoKCXVpbnQ4X3QgR2V0RGF5KCkgeyByZXR1cm4gZGF5Owl9Cgl1aW50OF90IEdldE5leHREYXkoKSB7IHJldHVybiArK2RheTsgfQkvLyAvLyBVbSBuZXVlIE1ldGhvZGUgZXJ3ZWl0ZXJ0Cn07CgppbnQgbWFpbigpCnsKCURhdGVTdHJpbmcgZGF0ZTsJCQkJLy8gSW5zdGFuemlpZXJ1bmcgbWl0IFN0YW5kYXJkIEtvbnN0cnVrdG9yIHVuZCAKCglwcmludGYoIkRheTogJWQgIiwgZGF0ZS5HZXREYXkoKSk7CSAJLy8gVmVyd2VuZGVuIGRlciBNZXRob2RlIEdldERheSBhdXMgS2xhc3NlIERhdGVTdHJpbmcKCXByaW50ZigiTmV4dCBEYXk6ICVkXG4iLCBkYXRlLkdldE5leHREYXkoKSk7CSAvLyBWZXJ3ZW5kZW4gZGVyIG5ldWVuIE1ldGhvZGUgR2V0TmV4dERheSBhdXMgS2xhc3NlIERhdGVTdHJpbmcKICByZXR1cm4gMDsKfQo=