000
01.10.2004, 14:58 Uhr
lubU
|
Hi zieh mir grad c++ in 21 Tagen rein und bin mit Kapitel 1-5 schon fertig. Ging ja auch recht schnell da die C Kentnisse dafür ausgereicht haben. häng grad bei Kapitel 6 Klassen fest:
C++: |
#include <iostream.h> #include <conio.h> class Point // nimmt X,Y-Koordinaten auf { // Kein Konstruktor, Standardkonstruktor verwenden public: void SetX(int x) { itsX = x; } void SetY(int y) { itsY = y; } int GetX()const { return itsX;} int GetY()const { return itsY;} private: int itsX; int itsY; }; // Ende der Klassendeklaration von Point
class Rectangle { public: Rectangle (int top, int left, int bottom, int right); ~Rectangle () {}
int GetTop() const { return itsTop; } int GetLeft() const { return itsLeft; } int GetBottom() const { return itsBottom; } int GetRight() const { return itsRight; }
Point GetUpperLeft() const { return itsUpperLeft; } // versteh ich net ^^ was macht das Point da Point GetLowerLeft() const { return itsLowerLeft; } Point GetUpperRight() const { return itsUpperRight; } Point GetLowerRight() const { return itsLowerRight; }
void SetUpperLeft(Point Location) {itsUpperLeft = Location;} void SetLowerLeft(Point Location) {itsLowerLeft = Location;} void SetUpperRight(Point Location) {itsUpperRight = Location;} void SetLowerRight(Point Location) {itsLowerRight = Location;}
void SetTop(int top) { itsTop = top; } void SetLeft (int left) { itsLeft = left; } void SetBottom (int bottom) { itsBottom = bottom; } void SetRight (int right) { itsRight = right; }
int GetArea() const;
private: Point itsUpperLeft; //variable vom Typ Point? Was für Auswirkungen hat das? Point itsUpperRight; Point itsLowerLeft; Point itsLowerRight; int itsTop; int itsLeft; int itsBottom; int itsRight; }; // Ende von Rect.hpp
Rectangle::Rectangle(int top, int left, int bottom, int right) { itsTop = top; itsLeft = left; itsBottom = bottom; itsRight = right;
itsUpperLeft.SetX(left); //was passiert hier? itsUpperLeft.SetY(top);
itsUpperRight.SetX(right); itsUpperRight.SetY(top);
itsLowerLeft.SetX(left); itsLowerLeft.SetY(bottom);
itsLowerRight.SetX(right); itsLowerRight.SetY(bottom); } // Rechteckflaeche berechnen. Dazu Ecken bestimmen, // Breite und Hoehe ermitteln, dann multiplizieren.
int Rectangle::GetArea() const { int Width = itsRight-itsLeft; int Height = itsTop - itsBottom; return (Width * Height); }
int main() { // Eine lokale Rectangle-Variable initialisieren Rectangle MyRectangle (100, 20, 50, 80 ); clrscr(); int Area = MyRectangle.GetArea();
cout << "Flaeche: " << Area << "\n"; cout << "Obere linke X-Koordinate: "; cout << MyRectangle.GetUpperLeft().GetX(); //Objekt:.Methode.Methode???? getch(); return 0; }
|
hab en bisschen schwierigkeiten mich mit dem anzufreunden was hier gemacht wir ^^ wär nett wenn das jemand kurz erklären könnte... Dieser Post wurde am 01.10.2004 um 14:59 Uhr von lubU editiert. |