Problem/Frage zum Thema Klassen!!



  • Hallo,

    habe ne frage zum thema Klassen.
    Will ne Klasse erstellen, die einfach nur Koordinaten einliest(x,y). Die bilden dann ein Punkt.
    Hier der Code, der bestimmt falsch ist:

    class Point{
          public:
    
          void scan(void);       
    
          int x;
          int y;
          };
    
    void Point::scan(void){
         printf("X eingeben: ");
         scanf("%d",&x);
         fflush(stdin);
         printf("Y eingeben: ");
         scanf("%d",&y);
         fflush(stdin);
    }
    

    Also will dass ich Punkte(Koordinaten eingebe)und dass die Werte an den verschiedenen Objekte weitergegeben werden.
    Zum Beispiel

    Point Punkt_1;
    

    Hier sollen die Werte zum ersten Punkt hin.

    Dann die zweiten Werte sollen hier hin

    Point Punkt_2;
    

    Also damit ihr versteht was ich meine, will einfach nicht immer das schreiben:

    printf("X eingeben: ");
         scanf("%d",&Punkt_1.x);
         fflush(stdin);
         printf("X eingeben: ");
         scanf("%d",&Punkt_2,x);
         fflush(stdin);
    

    Bitte um HILFE!!



  • Ich verstehe die Fragestellung hier nicht so ganz.

    Bitte beschreibe nochmal genau, was du möchtest.

    Außerdem ist das, was du dort machst C.
    In C++ nutzt man meistens die Ein und Ausgabestreams (cout, cin, etc)



  • Weiss dass es C ist aber dachte, dass ihr mir trotzdem helfen könnt.

    Also will dass die Klasse Point eine Funktion hat, die Koordinaten einliest, immer mit der Reinfolge nach und die dann auch irgendwo speichert, zum Beispiel Punkt1,Punkt2 usw.



  • Du schafft für Point und istream einen binären operator>>

    std::istream& operator>>(std::istream& is, Point& point);
    

    und dann liest Du aus std::cin die Daten ein.

    Grüsse

    *this


Anmelden zum Antworten