1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
// Kapitel 6 - Programm 8 - OPUEBER.CPP
#include <iostream>
class Box
{
int Laenge;
int Breite;
public:
void Setze(int L, int B) {Laenge = L; Breite = B;}
int HoleFlaeche(void) {return Laenge * Breite;}
friend Box operator+(Box A, Box B); // Addiere zwei Boxen
friend Box operator+(int A, Box B); // Addiere eine Konstante zu einer Box
friend Box operator*(int A, Box B); // Multipliziere eine Box mit einer Konstanten
};
Box operator+(Box A, Box B) // Addiere die Breite von zwei Boxen
{
Box Temp;
Temp.Laenge = A.Laenge;
Temp.Breite = A.Breite + B.Breite;
return Temp;
}
Box operator+(int A, Box B) // Addiere eine Konstante zur Breite einer Box
{
Box Temp;
Temp.Laenge = B.Laenge;
Temp.Breite = A + B.Breite;
return Temp;
}
Box operator*(int A, Box B) // Multipliziere eine Box mit einer Konstanten
{
Box Temp;
Temp.Laenge = A * B.Laenge;
Temp.Breite = A * B.Breite;
return Temp;
}
int main()
{
Box Klein, Mittel, Grosz;
Box Temp;
Klein.Setze(2, 4);
Mittel.Setze(5, 6);
Grosz.Setze(8, 10);
std::cout << "Der Flaecheninhalt ist " << Klein.HoleFlaeche() << "\n";
std::cout << "Der Flaecheninhalt ist " << Mittel.HoleFlaeche() << "\n";
std::cout << "Der Flaecheninhalt ist " << Grosz.HoleFlaeche() << "\n";
Temp = Klein + Mittel;
std::cout << "Der neue Flaecheninhalt ist " << Temp.HoleFlaeche() << "\n";
Temp = 10 + Klein;
std::cout << "Der neue Flaecheninhalt ist " << Temp.HoleFlaeche() << "\n";
Temp = 4 * Grosz;
std::cout << "Der neue Flaecheninhalt ist " << Temp.HoleFlaeche() << "\n";
return 0;
}
// Ergebnis beim Ausführen
//
// Der Flaecheninhalt ist 8
// Der Flaecheninhalt ist 30
// Der Flaecheninhalt ist 80
// Der neue Flaecheninhalt ist 20
// Der neue Flaecheninhalt ist 28
// Der neue Flaecheninhalt ist 1280
|
Copyright © 1997, 1998, 2001-2005 Heinz Tschabitscher - Letzte Änderung 13. September 2005
Heinz Tschabitscher - | Datenschutz | Impressum - Kommentare, Kritik, Anregungen, Fragen?