#include <iostream>
using namespace std;

const int DAYS = 0x08;

class Date
{
private:
	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) {}

	int GetDay() { 
		int d = Date::GetDay();
		d++;
		return d; 
	}
};

int main()
{
	DateString date;				// Instanziierung mit Standard Konstruktor und 

	printf("Day 1: %d\n", date.GetDay());	 // Verwenden der Methode GetDay aus Klasse Date
  return 0;
}
