Rovat: Dr. Bit
2001. április 11., szerda 16:40
|
Programozzunk Együtt! Objektum Orientált Programozás I.
Objektum Orientált Programozás I.
Az objektum orientált programozás lényege, hogy vannak bizonyos dolgok (objektumok) amelyeknek tulajdonságaik vannak. Ez a lehetőség főleg akkor kap fontos szerepet, amikor egy-egy programon több programozó együtt dolgozik, mindegyikük egy-egy programrészt ír meg. Az objektumok tartalmazhatnak változókat és tagfüggvényeket. Mindezek elérését külön-külön lehet szabályozni. Az objektumok számára lefoglalt memóriaterületet dinamikusan lehet kezelni. Fontos megemlíteni, hogy az objektum orientáltság csak C++ programnyelvben használhat, annak ellenére, hogy C-ben is van néhány hasonló lehetőség (struct, malloc, namespace stb. ...) Most pedig nézd meg a következő forráskódot, a megjegyzések segíteni fognak a megértésben: // OOP_PL_1.CPP - Egyszeru pelda az OOP bemutatasara #include class tpelda // Pelda osztaly - OBJEKTUM!!
{
public:
tpelda(); // Konstruktor
~tpelda(); // Destruktor
int szam; // Egy 'int' tipusu valtozo
void peldafgv(void); // Egy 'void' tipusu fuggveny
};
tpelda::tpelda() // tpelda konstruktora
{
cout<<"nnnA konstruktor fuggveny vegrehajtasa...n";
cout<<"A szam valtozo beallitasa...n";
szam=100;
}
void tpelda::peldafgv(void) // tpelda tagfuggvegye
{
cout<<"Ez itt a peldafuggvenyn";
cout<<"A 'szam' valtozo kiirasa: "<
tpelda::~tpelda() // tpelda destruktora
{
cout<<"A destruktor fuggveny vegrehajtasa...n";
}
void main(void)
{
tpelda *pelda; // Letrehozunk egy mutatot 'pelda' nevvel
if (!(pelda = new tpelda)) // A 'pelda' mutato segitsegevel megprobalunk
{ // memoriat foglalni az osztaly reszere...
cerr << "Nem sikerult lefoglalani memoriat!!";
exit (1); // Ha nem sikerul, akkor kilepunk...
}
// Sikeres memoriafoglalas eseten a konstruktor automatikusan meghivodik!
cout << "A szam valtozo kiolvasasa az osztalyon kivulrol: " << pelda->szam << endl; cout << "Az osztaly egy fuggvenyenek meghivasa: n"; pelda->peldafgv(); delete pelda; // Toroljuk 'pelda'-t. // A destruktor fuggveny automatikusan // meghivodik } // Program vege Mostanra ennyi, a részletes magyarázatot lásd a következő cikkben! |