/** * Ueberlaedt den - Operator. * Subtrahiert eine Anzahl von Minuten von einer Zeit. * So ergibt beispielsweise die Rechnung 13:10:12 - 3 die Zeit 13:09:12. * Dabei werden auch Minuten- oder Stundenspruenge beachtet. * * @param minuten Die Anzahl der Minuten, die von einer Zeit subtrahiert werden sollen. * * @return Die Zeit, von der die Minuten subtrahiert wurde. */ Zeit Zeit::operator-(int minuten) const { long zeit_in_sekunden = liefere_zeit_in_sekunden(); zeit_in_sekunden -= (minuten * 60); Zeit neue_zeit = Zeit(zeit_in_sekunden); return neue_zeit; }
int main() { Termin t = Termin(12,0,"Testat"); Zeit z = Zeit(10,54); cout << t << endl; cout << z << endl; return 0; }
/** * Initialisiert eine Sprechstunde. * Nur der Wochentag wird gesetzt. * Die Startzeit wird auf 8Uhr gesetzt. * Die Endzeit wird auf 4 Stunden nach der Startzeit gesetzt, also auf 12Uhr. * * @param der_wochentag Der Wochentag der Sprechstunde. */ Sprechstunde::Sprechstunde(string der_wochentag) :wochentag(der_wochentag) { uhrzeit_von = Zeit(8, 0, 0); uhrzeit_bis = uhrzeit_von + 4; }
/** * Der Default-Konstruktor. * Initialisiert eine Sprechstunde, die am Montag stattfindet und von 8Uhr bis 12 Uhr geht. */ Sprechstunde::Sprechstunde() { wochentag = "Montag"; uhrzeit_von = Zeit(8, 0, 0); uhrzeit_bis = uhrzeit_von + 4; }
/** * Ueberlaedt den - Operator. * Gibt die Differenz von zwei Zeiten zurueck. * So ergibt beispielsweise die Rechnung 13:17:23 - 12:12:00 eine Differenz von 01:05:23. * * @param zeit Die Zeit, welche von der aktuell gesetzten Zeit abgezogen werden soll. * * @return Die Zeit die zwischen den beiden Zeiten liegt. */ Zeit Zeit::operator-(const Zeit& zeit) const { long die_differenz = liefere_zeit_in_sekunden() - zeit.liefere_zeit_in_sekunden(); Zeit die_differenzzeit = Zeit(die_differenz); return die_differenzzeit; }
/** * Ueberlaedt den + Operator. * Addiert eine Zeit zu einer Zeit hinzu. * So wird beispielsweise bei 13:10:12 + 01:00:00 die Zeit 14:10:12. * Dabei werden auch Minuten- oder Stundenspruenge beachtet. * * @param zeit Die Zeit, die zu der anderen Zeit hinzaddiert werden sollen. * * @return Die Zeit, zu dem die Anzahl der Minuten addiert wurden. */ Zeit Zeit::operator+(const Zeit& zeit) const { long addierte_zeiten_in_sekunden = liefere_zeit_in_sekunden() + zeit.liefere_zeit_in_sekunden(); Zeit neue_zeit = Zeit(addierte_zeiten_in_sekunden); return neue_zeit; }