Eine Klasse in eine andere übergeben (Anfänger)



  • Moin Forum,
    schon mal vorab danke für eure Mühe und Hilfe.
    Die Gestellte Übungsaufgabe (keine Hausaufgabe) lautet:
    "Schreiben Sie eine Klasse „Kreis“. Die Klasse soll aus einem Punkt und
    einem Radius bestehen. Es soll neben dem Standardkonstruktor einen
    weiteren Konstruktor geben, bei dem der Punkt und der Radius übergeben
    werden können (Auch hier kein setValues!)."

    Den "Punkt" gibt es schon in Form einer anderen Klasse.

    {
    
    public:
    	Kreis();
    	Kreis(int r,Punkt);
    ~Kreis();
    
    private:
    	int M_r; 
    	int M_Punkt;
    
    }
    
    {
    
    Kreis::Kreis(int r, Punkt): M_r(r)
    {
    	M_Punkt = Punkt;
    }
    
    }
    

    Der meckert jetzt und sagt, dass der Typname class Punkt nicht zulässig ist.
    Ich erinnere mich aber wage daran, dass man pointer* oder byreference& übergeben kann, aber weiß leider nicht wie das genau ging. Hab schon bisschen gegooglet, aber bin leider nicht unbedingt schlauer als vorher. 😃

    Ich glaub mir fehlt noch bisschen der AHA-Effekt in Sachen programmieren. Wäre also sehr dankbar über eine Erklärung bzw. einen Ansatz zur Lösung.

    Vielen Dank.



  • nur Punkt zu übergeben geht nicht. Du musst eine Variable vom Typ Punkt übergeben.

    Schreibe statt

    Kreis(int r,Punkt);
    
    Kreis(int r,Punkt p);
    


  • Warum ist M_Punkt ein int?
    Niemand hier will wissen, ob du die indirekte Rede beherrscht. Copy&Paste!


Anmelden zum Antworten