Klasse 2

Programme mit einer Klasse

//geradeoderungerade.cpp
//8.7.2016
#include <iostream>
using namespace std;

class GeradeOderUngerade
{
    private:
        int zahl;
    public:
        void get()
         { cout << "Eingabe: "; cin >> zahl; }
        bool ungerade();
};
bool GeradeOderUngerade::ungerade()
{
    bool b = zahl%2;
    return b;
}


int main()
{
    GeradeOderUngerade g;
   
    g.get();
    bool bo = g.ungerade();
    cout << "ist ";
    //if (bo) cout << "ungerade";
    //else cout << "gerade";
    cout << (bo?"ungerade":"gerade");
    cin.sync();
    cin.get();
    return 0;
}


Hier ein Programm mit einer Klasse "Bruch". Mit diesem Programm kannst Du Brüche kürzen.


Eine weitere Klasse

//wuerfel.cpp

 

#include <iostream>

#include <cstdlib>//rand

#include <ctime> //rand,srand

#include <conio.h> //getch()

using namespace std;

class Wuerfel

{

private:

int wurf=0;

public:

Wuerfel(){}

void ausgabe()

{

cout << " " << wurf;

}

void zufall()

{

wurf = rand() % 6 +1;

}

}; //class

 

int main()

{

Wuerfel w1;

char ein;

cout << "Wuerfel. Taste geht weiter. Beenden mit q, bitte!" <<endl;

srand(time(NULL));

for (;;)

{

w1.zufall();

w1.ausgabe();

ein = getch();

if ( ein == 'q' ) break;

} //for

return 0;

}

 


Bitte das YouTube-Video groß einstellen! So kannst Du es besser lesen.


Das Objekt

Das Objekt ist ein Arbeitsblatt, eine Arbeitskopie von der Klasse.

Konstruktor - der Starter

Es gibt einen Starter, den Konstruktor. Konstruktor: Repeat()  {}. - Er dient z. B. dazu, einen Anfangswert in die erste Variable zu schreiben. Der Konstruktor wird vollautomatisch aufgerufen, sobald ein Objekt erstellt wird: Dieses Objekt wird im folgenden Programm so erstellt: "Repeat r1; Repeat r2;".


Anfangen sollte man mit einer Klasse im Programm. Das ist jedenfalls übersichtlicher.


Zwei Objekte miteinander verknüpfen

Machen wir das Verknüpfen mal nicht so geheimnisvoll: Es ist eine einfache Addition zweier Objekte. Siehe die rot markierten Hinweise im Fragment:

class Asphalt

{ ...

void add(Asphalt as2, Asphalt as3);

};//Ende der class Asphalt

void Asphalt::add(Asphalt as2, Asphalt as3)

{

a = as2.a + as3.a;

}

int main()

{

Asphalt asph1;

Asphalt asph2;

Asphalt asph3;

 

asph1.write(200);

asph2.write(350);

asph3.add(asph1, asph2);

asph3.show();

...