Was macht der Parameterkonstruktor ?



  • Hallo, kann mir jemand erklären was hier die Aufgabe des Parameterkonstruktors ist bzw. was die Aufgabe von einem Parameterkonstruktor überhaupt ist ?

    #include<iostream>                     
    #include<conio.h>
    using namespace std;
     
    class CBruch
    {
        private:
                int z, n;
                float dez;
        public:          
                CBruch();
                CBruch(int);
                CBruch(int,int);
                void a_bruch();
                void dezimal();
                float get_dez();
    };
    //----------------------------------------------------------------------------
    CBruch::CBruch()
    {
        z=1;    n=1;
    }
     
    CBruch::CBruch(int zaehler)
    {
        z=zaehler;
        //n=1;    dann funktioniert es !
    }
     
    CBruch::CBruch(int zaehler, int nenner)
    {
        z=zaehler;      n=nenner;
    }
     
    void CBruch::a_bruch()
    {
        cout<<endl<<endl<<"Der Bruch als Bruch: "<<z<<"/"<<n<<endl;
    }
     
    void CBruch::dezimal()
    {
        dez=(float)z/n;
    }
     
    float CBruch::get_dez()
    {
        return dez;
    }
    //--------------------------------------------------------------------------
    main()
    {
      CBruch B1;
      CBruch B2(3);
      CBruch B3(4,5);
     
        B1.a_bruch();
        B2.a_bruch();
        B3.a_bruch();
       
        B1.dezimal();
        B2.dezimal();
        B3.dezimal();
       
        cout<<endl<<endl<<"Der Bruch als Dezimalzahl: "<<B1.get_dez()<<endl;
        cout<<endl<<endl<<"Der Bruch als Dezimalzahl: "<<B2.get_dez()<<endl;
        cout<<endl<<endl<<"Der Bruch als Dezimalzahl: "<<B3.get_dez()<<endl;
    }
    

  • Mod

    Das mag jetzt furchtbar dumm klingen, aber: Er macht, dass man Parameter bei der Konstruktion angeben kann!? Wie sonst sollte hier B2 den Wert 3 und B3 den Wert 4/5 erhalten?



  • So langsam bekomme ich immer mehr das Gefühl dass die User uns hier verscheissern wollen.

    Jedenfalls geben sie sich viel zu wenig Mühe für das was sie machen.


Log in to reply