Programozás. Osztályok, Származtatott osztályok. Fodor Attila
|
|
- Ervin Vincze
- 7 évvel ezelőtt
- Látták:
Átírás
1 Programozás Osztályok, Származtatott osztályok Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék március 11.
2 Beadandó feladat Beadandó feladat Beadandó feladat - ZH-k kiváltására Készítsen olyan osztályokat, amely akalmas a következő ideális alkatrészek viselkedését modellezni: Feszültség forrás, áramforrás Rövidzár, szakadás Ellenállás, kondenzátor, tekercs Az osztályok támogassák különböző alkatrészek soros és párhuzamos kapcsolását Egy példán mutassa be a feszültség- és áramosztót Az osztályok segítségével készítsen néhány egyszerű példát, melyben szemléltetve van a soros és párhuzamos kapcsolás. Készítse el az osztályok dokumentációját Az első 5 helyes megoldást beadó hallgató kap felmentést a ZH-k megírása alol. Fodor A. (Pannon Egyetem) Programozás március / 31
3 Osztályok, objektumok létrejöhetnek: Automatikusan Globális változóként Osztály tagjaiknént... Konstruktor: létrejöttekor fut le Feledata: Osztály kezdeti inicializálása (Memória foglalás, változók beállítása) Destruktor: eltávolításakor/törlésekor fut le Feledata: Osztály által használt erőforrások felszabadítása (Memória felszabadítás) Fodor A. (Pannon Egyetem) Programozás március / 31
4 Osztályok, objektumok Alapértelmezett konstruktor Példa (Konstruktor implementációja): class CPelda public: CPelda(int pyear=0, int pmonth=0, int pday=0, int phour=100, int pmin=100, int psec=100); }; CJDate::CPelda(int pyear, int pmonth, int pday, int phour, int pmin, int psec) // Osztályváltozók beállítása // Memória foglalás is lehetne it... } Fodor A. (Pannon Egyetem) Programozás március / 31
5 Destruktor Osztályok, objektumok Példa (Destruktor implementációja): class CPelda public: ~CPelda(); }; CPelda::~CPelda() // Memória felszabadítás } A használat végén biztosan fel van szabadítva a memória Fodor A. (Pannon Egyetem) Programozás március / 31
6 Osztályok, objektumok Dinamikus memóriakezelés a C++-ban Változók élettartamának szabályozása Futási időben történő memóra foglalás és felszabadítás new operátor A szabad tárban (free store, heap, dinamikus memória) objektum létrehozására szolgál A dinamikus memóriakezelés rendszer szinten van megoldva (A malloc C++-os megfelelője, csak sokkal kényelmesebb a használata) new[] operátor A szabad tárban (free store, heap, dinamikus memória) tömb létrehozására szolgál Nem tölti fel kezdőértékkel a memóriát new és a new[] operátorok is felülírhatóak Fodor A. (Pannon Egyetem) Programozás március / 31
7 Osztályok, objektumok Dinamikus memóriakezelés a C++-ban delete operátor new operátorral lefoglalt memória felszabadítása (csak a new segítségével lefoglaltra) item Minden objektumot csak egyszer lehet felszabadtani Ha egy objektum a delete operatorral törölve lett, akkor ahhoz nem lehet már hozzáférni (hozzáférési kísérlet is hibának számít) delete[] operátor A szabad tárban (free store, heap, dinamikus memória) tömb felszabadítására szolgál "Szemétgyűjtő" (garbage collector) törlését segíti, melyekre nincsen hivatkozás C++ nem támogatja delete és a delete[] operátorok is felülírhatóak Fodor A. (Pannon Egyetem) Programozás március / 31
8 Osztályok, objektumok Dinamikus memóriakezelés a C++-ban CJDate *p, *p2; p = new CJDate(); p2 = new CJDate(2010, 3, 11, 14, 0, 0); CJDate &r = *p; int y = r.getyear(); int m = r.getmonth(); // Referencia létrehozása delete p; delete p2; delete p2; // HIBA!!! Példa (tömb lefoglalása): char *pc3 = new char[100]; delete pc3; // CJDate *p3 = new CJDate[100](); CJDate *p3 = new CJDate[100]; delete[] p3; delete p3; // Problémás lehet delete[] kell!!! Fodor A. (Pannon Egyetem) Programozás március / 31
9 Példa futása: Konstruktorok: a b (c) d Destruktorok: d (c) b a Fodor A. (Pannon Egyetem) Programozás március / 31 Osztályok, objektumok Objektum létrehozása és megsemmisítése Lokális változó Konstruktora mindig végrehajtódik, ha új példány keletkezik, mert a blokk végrehajtása elindul Destruktor végrehajtására akkor történik, amikor kilépünk a változó blokkjából void fv(char ch) CPelda a; CPelda b; if (ch == c ) CPelda c; } CPelda d; }
10 Osztályok, objektumok Objektum létrehozása és megsemmisítése Lokális változó Ha másolással inicializáljuk a változót nem fut le a konstruktor!!! CPelda a; CPelda b=a; Érdemes másoló konstruktort készíteni ilyenkor, és az értékadás operátorát felülírni class CPelda CPelda(const CPelda&); // másoló konstruktor CPelda& operator=(const CPelda&); // másoló értékadás }; Fodor A. (Pannon Egyetem) Programozás március / 31
11 Osztályok, objektumok Objektum létrehozása és megsemmisítése Lokális változó - Példa class CPelda }; CPelda(const CPelda&); CPelda& operator=(const CPelda&); // másoló konstruktor // másoló értékadás CPelda::CPelda(const CPelda& cp) // másoló konstruktor p = new string[cp.darab]; // for(int i=0;... másolás } CPelda& CPelda::operator=(const CPelda& t) // értékadás if (this!= &t) // ön-értékadás (t = t) elekrüéáse delete[] p; p = new string[cp.darab]; // for(int i=0;... másolás } return *this; } Fodor A. (Pannon Egyetem) Programozás március / 31
12 Osztályok, objektumok Objektum létrehozása és megsemmisítése Szabad memóriából történő lefoglalással Dinamikus memoriafoglalás esetén (new operator) A konstruktort az operator hívja meg Memória felszabadítása delete operator segítségével delete operator hívja meg a destruktort CPelda *p, *p2; p = new CPelda(); p2 = new CPelda(1, 2, 3); delete p; delete p2; Fodor A. (Pannon Egyetem) Programozás március / 31
13 Osztályok, objektumok Objektum létrehozása és megsemmisítése Osztály típusú tagok Egy osztály változójának típusa egy másik osztály Tag-kezdőérték lista (member initializer) class CObserve string Name; string Star; CJDate ODate; double Magnitude; CObserve(const string& pstar, CJDate pdate, const double& pmagn); }; CObserve::CObserve(const string& pstar, CJDate pdate, const doubl : Name(), Star(pStar), ODate(pDate), Magnitude(pMagn) } Fodor A. (Pannon Egyetem) Programozás március / 31
14 Osztályok, objektumok Objektum létrehozása és megsemmisítése Tömbök Ha egy osztálynak van alapértelmezett konstruktora, akkor ilyen osztályú objektumok tömbje is meghatározható class CPelda CPelda(); // alapértelmezett konstruktor }; CPelda peldany[15]; Mind a 15 példány az alapéertelmezett konstruktorral fog meghívódni Fodor A. (Pannon Egyetem) Programozás március / 31
15 Osztályok, objektumok Objektum létrehozása és megsemmisítése Tömbök Dinamikusan kezelt tömböknél figyelni kell a felszabadításra delete vagy delete[] nem felcserélhető szabvány szerint!!! (Bizonyos fordítók/változatok nyilvántartják, hogy tömb volt e lefoglalva) CPelda* p1 = new CPelda; CPelda* p2 = new CPelda[100]; CPelda* p3 = new CPelda; CPelda* p4 = new CPelda[100]; delete p1; delete[ ] p2; delete[ ] p3; delete p4; // hiba, kerülendő // hiba, kerülendő Kiküszöbölés: (dinamikusan még bővíthető is) vector template osztály alkalmazása vector<cpelda>* p1 = new vector<cpelda>(100); CPelda* p2 = new CPelda; delete p1; delete p2; Fodor A. (Pannon Egyetem) Programozás március / 31
16 Osztályok, objektumok Objektum létrehozása és megsemmisítése Lokális statikus adatok Konstruktora akkor hajtódik végre, amikor a futás először eljut a példányig void fv(char ch) static CPelda tbl; if (ch == b ) static CPelda tbl2; } } fv( a ); fv( b ); fv( c ); Destruktor végrehajtására akkor történik, amikor kilépünk a programból Fodor A. (Pannon Egyetem) Programozás március / 31
17 Osztályok, objektumok Objektum létrehozása és megsemmisítése Globális adatok A main() függvény lefutása előtt jönnek létre Konstruktor a main() függvény előtt hajtódik végre Dinamikus könyvtárak esetében a dinamikus kód programhoz való kapcsolódásakor fut le Több változó esetén a definició sorrendjébe történik a konstruktorok végrehajtása CComplex c; CPelda pelda; void main(void) } Destruktor végrehajtására akkor történik, amikor kilépünk a main() függvényből Fodor A. (Pannon Egyetem) Programozás március / 31
18 Osztályok, objektumok Objektum létrehozása és megsemmisítése Ideiglenes objektumok Legtöbbször aritmetikai kifejezéseknél jön létre Nem törlödik, ha nevesített változónak ad kezdőértéket vagy referenciához van kötve CComplex c(1,1), c2(2,2), c3(3,3); c = (c+c2)*c3; double re = (c+c2).getre(); double im = (c+c2).getim(); Fodor A. (Pannon Egyetem) Programozás március / 31
19 Osztályok, objektumok Objektum létrehozása és megsemmisítése meghatározott helyre történő elhelyezése new operátor heap-ben foglalja le a memóriát és oda hozza létre az objektumot Ha meg akarjuk adni, hogy hova kerüljön az új objektum, akkor meg kell változtatni a new operátort Kell egy újabb paraméter (memóriacím) void* operator new(size_t, void* p) return p; } // explicit elhelyező oper Fodor A. (Pannon Egyetem) Programozás március / 31
20 Osztályok, objektumok Objektum létrehozása és megsemmisítése Union (Unió) Az union olyan adatszerkezet (struct), amelyben minden tag címe azonos Egy uniónak lehetnek tagfüggvényei Az uniónak nem lehetnek statikus tagjai Nem lehet olyan adattagja az uniónak, melynek konstruktora van Nem tudja a fordító, hogy milyen típusú adat van benne Felhasználás: Leginkább alacsony szinten Olyan osztály belsejében ahol nyilvántartják, hogy mi van az unióban Fodor A. (Pannon Egyetem) Programozás március / 31
21 Származtatott osztályok Osztály, osztályhierarchia Származtatott osztályok Osztály, osztályhierarchia C++ a Simula nyelvből vette mindkettő fogalmat A tervezési elv is a Simula nyelvből lett átvéve: Programban használt fogalmak modellezésére osztályok alkalmazása Fodor A. (Pannon Egyetem) Programozás március / 31
22 Származtatott osztályok Származtatott osztályok - Példa Származtatott osztályok Vegyünk két adatszerkezet tantárgyak, kurzusok eltárolására struct Tantargy string Nev; string Oktato; char Ora_E; char Ora_L; char Ora_Gy; }; struct Kurzus string Nev; string Oktato; char Ora_E; char Ora_L; char Ora_Gy; int NumHallgato; string Terem; }; Látható, hogy vannak azonos tulajdonságaink (adattagjaink) Fodor A. (Pannon Egyetem) Programozás március / 31
23 Származtatott osztályok Származtatott osztályok Származtatott osztályok (Derived), öröklés A Kurzus-t le tudjuk származtatni a Tantargy osztályból struct Kurzus:public Tantargy int NumHallgato; string Terem; }; A két osztály közötti kapcsolat neve: öröklődés (öröklés, inheritance) A Kurzus a Tantargy-ból származik A Tantargy a Kurzus bázisosztály/őse Az öröklődés miatt adottak lesznek a Tantargy tulajdonságai Név, oktató, óraszámok Új tulajdonságok: Hallgatók száma, terem Fodor A. (Pannon Egyetem) Programozás március / 31
24 Származtatott osztályok Osztályok viszonyának ábrázolása Származtatott osztályok Fodor A. (Pannon Egyetem) Programozás március / 31
25 Származtatott osztályok Öröklődés tulajdonságai Származtatott osztályok A Kurzus a Tantargy-ból származik Kurzus osztály egyben Tantargy osztály is Rendelkezik minden tulajdonságával A Kurzus osztályt használhatjuk Tantargy osztály helyett is A Tantargy osztályt NEM használhatjuk Kurzus osztály helyett is Nem rendelkezik minden tulajdonságával (például: terem) Egy származtatott osztálynak egy bázis osztály nyilvános bázisosztálya, akkor a Base* típusú változó típuskényszerítés nélkül kaphat Derived* típusú értéket Mutatók és referenciák: Származtatott osztály objektumait úgy kezelhetjük, mint a bázisosztály objektumait Fodor A. (Pannon Egyetem) Programozás március / 31
26 Tagfüggvények Származtatott osztályok Származtatott osztályok Probléma: Bárhonnan modosíthatóak az adattagok struct alkalmazásakor nem lehet az elérési tulajdonságokat szabályozni Megoldás: Osztály alkalmazása class Tantargy string Nev; string Oktato; char Ora_E; char Ora_L; char Ora_Gy; public: string GetName(); }; class Kurzus:public Tantargy int NumHallgato; string Terem; public: string GetTerem(); }; Fodor A. (Pannon Egyetem) Programozás március / 31
27 Származtatott osztályok tagfüggvényei elérhetik a bázisosztály nyilvános (public) és védett (protected) változóit, függvényeit Származtatott osztály NEM éri el a bázisosztály privát (private) tagjait Ha el lehetne érni: Ki lehetne kerülni az elérés szabályozását Ha hozzáférne, akkor a private elérés értelmetlenné válna A védett (protected) tag a származtatott osztályok számára úgy viselkedik, mint egy nyilvános (public), a többiek számára azonban privátnak minősül Ahol megengedhető ott védett (protected) és ne privát (private) tagokat érdemes használni Érdemes úgy kialakítani az osztályokat, hogy a származtatott osztály a bázisosztálynak csak a nyilvános (public) tagjait használja Az ősosztály tagfüggvényei felülírhatóak Hivatkozás az ősosztály függvényére a :: (hatókör) operátorral lehetséges Fodor A. (Pannon Egyetem) Programozás március / 31 Tagfüggvények Származtatott osztályok Származtatott osztályok
28 Virtuális függvények Származtatott osztályok Származtatott osztályok A virtual szó a Simulában és a C++-ban azt jelenti, hogy az adott osztályból származtatott osztályban később felülírható class CJDate virtual int GetYear(); virtual int GetMonth(); virtual int GetDay(); }; A fordító a virtuális függvényekra mutató mutatókat egy táblázatban tárolja Virtuális Függvénytábla (VTBL) Minen virtuális függvényt tartalmazó osztálynak van egy VTBL táblája Fodor A. (Pannon Egyetem) Programozás március / 31
29 Származtatott osztályok Konstruktorok és destruktorok Származtatott osztályok Származtatott osztályoknak lehet konstruktora és destruktora Ha a bázisosztálynak van, akkor azokat meg kell hívni Ha nincsen alapértelmezett értéke az ősosztály konstruktorának, akkor azt nekünk kell a megfelelő paraméterekkel meghívni class Tantargy string Nev; string Oktato; char Ora_E; char Ora_L; char Ora_Gy; public: Tantargy(const string& pnev, const string& poktato); }; class Kurzus:public Tantargy int NumHallgato; string Terem; public: Kurzus(const string& pnev, const string& poktato, const string& pt Fodor A. (Pannon }; Egyetem) Programozás március / 31
30 Származtatott osztályok Konstruktorok és destruktorok Származtatott osztályok Tantargy::Tantargy(const string& pnev, const string& poktato) :Nev(pNev), Oktato(pOktato) } Kurzus::Kurzus(const string& pnev, const string& poktato, const string :Tantargy(pNev, poktato), Terem = pterem } Az ősosztály konstruktora a megadott paraméterekből kap értéket. Úgy hívjuk meg, mintha az tagja lenne az osztálynak Fodor A. (Pannon Egyetem) Programozás március / 31
31 Származtatott osztályok Konstruktorok és destruktorok Származtatott osztályok A származtatott osztály konstruktora csak a saját adattagjai és a bázisosztály konstruktorának adhat meg kezdőértéket! Bázisosztály tagjainak nem adhat értéket! Kurzus::Kurzus(const string& pnev, const string& poktato, const string :Nev(pNev), //Hiba Oktato(pOktato) //Hiba } Fodor A. (Pannon Egyetem) Programozás március / 31
Programozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.
Programozás C++ osztályok Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 25. Osztályok C++ osztályok Bevezetés Objektum-orientáltság
RészletesebbenSzámítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás
Számítástechnika II. BMEKOKAA153 5. Előadás Dr. Bécsi Tamás Kivételkezelés try Azon utasítások kerülnek ide, melyek hibát okozhatnak, kivételkezelést igényelnek catch( típus [név]) Adott kivételtípus esetén
RészletesebbenObjektumok inicializálása
Objektumok inicializálása Miskolci Egyetem Általános Informatikai Tanszék Objektumok inicializálása CPP4 / 1 Tartalom public adattagok inicializálása felsorolással konstruktor objektum tömbök osztály típusú
RészletesebbenProgramozás II. 3. gyakorlat Objektum Orientáltság C++-ban
Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban Tartalom OOP ismétlés Osztályok létrehozása Adattagok láthatóságai, elnevezési ajánlások Konstruktor, destruktor this pointer Statikus és dinamikus
RészletesebbenStatikus adattagok. Statikus adattag inicializálása. Speciális adattagok és tagfüggvények. Általános Informatikai Tanszék
Speciális adattagok és tagfüek Miskolci Egyetem Általános Informatikai Tanszék CPP7 / 1 Statikus adattagok Bármely adattag lehet static tárolási osztályú A statikus adattag az osztály valamennyi objektuma
RészletesebbenOsztályok. 4. gyakorlat
Osztályok 4. gyakorlat Az osztály fogalma Az objektumok formai leírása, melyek azonos tulajdonsággal és operációkkal rendelkeznek. Osztályból objektum készítését példányosításnak nevezzük. Minden objektum
RészletesebbenVisual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés.
Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. Az osztály egy olyan típus leíró struktúra, amely tartalmaz adattagokat
RészletesebbenPelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*;
Java osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. ( Előfeltétel 12. Tétel ) Az osztály egy olyan típus leíró struktúra, amely
RészletesebbenC++ programozási nyelv Konstruktorok-destruktorok
C++ programozási nyelv Konstruktorok-destruktorok Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/20 Tartalomjegyzék
RészletesebbenProgramozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.
Programozás C++ osztályok Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. április 8. Csak bázisosztályként használt/értelmezhető
Részletesebben1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben?
1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben? 3. Ismertesse a névtér fogalmát! 4. Mit értünk a "változó hatóköre"
RészletesebbenJava V. Osztályszint. lyszintű ű tagok. Példányváltozó. Osztályváltozó. Általános Informatikai Tanszék Utolsó módosítás:
Java V. szint lyszintű ű tagok A final minősítő Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 05. Java V.: szintű tagok JAVA5 / 1 Példányváltozó Az eddig megismert adattagokból
RészletesebbenProgramozás II. 4. Dr. Iványi Péter
Programozás II. 4. Dr. Iványi Péter 1 inline függvények Bizonyos függvények annyira rövidek, hogy nem biztos hogy a fordító függvényhívást fordít, hanem inkább az adott sorba beilleszti a kódot. #include
Részletesebben500. AA Megoldó Alfréd AA 500.
Programozás alapjai 2. NZH 2010.05.13. gyakorlat: / Hiány:0 ZH:0 MEGOLD IB.027/51. Hftest: 0 Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti, hogy minden
RészletesebbenJava programozási nyelv 4. rész Osztályok II.
Java programozási nyelv 4. rész Osztályok II. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/17 Tartalomjegyzék
RészletesebbenJAVA PROGRAMOZÁS 2.ELŐADÁS
Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 2.ELŐADÁS 2014-2015 tavasz Tömbök, osztályok, objektumok, konstruktorok Tömbök 2 Referencia típusú változó Elemtípus Primitív Referencia: osztály,
RészletesebbenOOP #14 (referencia-elv)
OOP #14 (referencia-elv) v1.0 2003.03.19. 21:22:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_14-1 - E jegyzet
RészletesebbenPénzügyi algoritmusok
Pénzügyi algoritmusok A C++ programozás alapjai Sztringek Osztályok alapjai Sztringek Szöveges adatok kezelése Sztring Karakterlánc (string): Szöveges adat Karaktertömbként tárolva A szöveg végét a speciális
RészletesebbenProgramozás II gyakorlat. 8. Operátor túlterhelés
Programozás II gyakorlat 8. Operátor túlterhelés Kezdő feladat Írjunk egy Vector osztályt, amely n db double értéket tárol. A konstruktor kapja meg az elemek számát. Írj egy set(int idx, double v) függvényt,
RészletesebbenSzéchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu
Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:
RészletesebbenJava VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1
Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum
RészletesebbenProgramozás C++ -ban
8. Dinamikus objektumok Programozás C++ -ban Ahhoz hogy általános prolémákat is meg tudjunk oldani, szükség van arra, hogy dinamikusan hozhassunk létre vagy szüntethessünk meg objektumokat. A C programozási
RészletesebbenProgramozás módszertan
Programozás módszertan p. Programozás módszertan Operátorok túlterhelése a C++ nyelvben Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA TANSZÉK Bevezetés Programozás
RészletesebbenAlkalmazott modul: Programozás 8. előadás. Strukturált programozás: dinamikus memóriakezelés. Dinamikus memóriakezelés. Dinamikus memóriakezelés
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás 8. előadás Strukturált programozás: dinamikus memóriakezelés Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
RészletesebbenJava és web programozás
Budapesti M szaki Egyetem 2013. szeptember 18. 2. El adás Komplex szám public class Complex { private float repart_; private float impart_; public Complex() { repart_ = 0; impart_ = 0; public Complex(float
RészletesebbenProgramozás alapjai II. (4. ea) C++
Programozás alapjai II. (4. ea) C++ konstruktor és értékadás, dinamikus szerkezetek Szeberényi Imre BME IIT M Ű E G Y T E M 1 7 8 2 C++ programozási nyelv BME-IIT Sz.I. 2011.03.01. -1-
RészletesebbenJava és web programozás
Budapesti Műszaki Egyetem 2015. 02. 11. 2. Előadás Mese Néhány programozási módszer: Idők kezdetén való programozás Struktúrált Moduláris Funkcionális Objektum-orientált... Mese Néhány programozási módszer:
Részletesebben3. Osztályok II. Programozás II
3. Osztályok II. Programozás II Bevezető feladat Írj egy Nevsor osztályt, amely legfeljebb adott mennyiségű nevet képes eltárolni. A maximálisan tárolható nevek számát a konstruktorban adjuk meg. Az osztályt
RészletesebbenJava és web programozás
Budapesti M szaki Egyetem 2013. szeptember 25. 3. El adás User public class User { private String realname_; private String nickname_; private String password_; public User(String realname, String nickname)
RészletesebbenBevezetés a Python programozási nyelvbe
Bevezetés a Python programozási nyelvbe 7. Gyakorlat osztályok, objektumok (utolsó módosítás 2018. aug. 28.) Szathmáry László Debreceni Egyetem Informatikai Kar 2018-2019, 1. félév OO programozás Pythonban
RészletesebbenC++ programozási nyelv Struktúrák a C++ nyelvben
C++ programozási nyelv Struktúrák a C++ nyelvben Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/37 Bevezetés A
RészletesebbenBevezetés a programozásba Előadás: Tagfüggvények, osztály, objektum
Bevezetés a programozásba 2 1. Előadás: Tagfüggvények, osztály, objektum Ismétlés int main() { string s; s; s= bla ; cout
RészletesebbenA C programozási nyelv V. Struktúra Dinamikus memóriakezelés
A C programozási nyelv V. Struktúra Dinamikus memóriakezelés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv V. (Struktúra, memóriakezelés) CBEV5 / 1 A struktúra deklarációja 1.
RészletesebbenProgramozás BMEKOKAA146. Dr. Bécsi Tamás 7. előadás
Programozás BMEKOKAA146 Dr. Bécsi Tamás 7. előadás AZ OOP alapelvei Egységbezárás(Encapsulation) Az adatokat es a hozzájuk tartozó eljárásokat egyetlen egységben (osztályban) kezeljük. Az osztály adatmezői
RészletesebbenAlkalmazott modul: Programozás 10. fejezet. Strukturált programozás: dinamikus memóriakezelés. Giachetta Roberto
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás 10. fejezet Strukturált programozás: dinamikus memóriakezelés Giachetta Roberto A jegyzet az ELTE Informatikai Karának 2015.
Részletesebben1. Öröklés Rétegelés Nyilvános öröklés - isa reláció Korlátozó öröklődés - has-a reláció
1. Öröklés Az objektum orientált tervezés fontos sarkköve, az osztályok viszonyainak a megtervezése. 1.1. Rétegelés c l a s s Address {..... c l a s s Name {..... c l a s s P e r s o n { Name name ; Address
RészletesebbenOsztály és objektum fogalma
Osztály és objektum fogalma A C++ programozási nyelv I. CPP1/ 1 Az osztály (class) class: adatok és módszerek (method) (függvények) együttese, amely absztrakt adattípusként működik. objektum: egy osztály
RészletesebbenProgramozás C++ -ban 2007/7
Programozás C++ -ban 2007/7 1. Másoló konstruktor Az egyik legnehezebben érthető fogalom C++ -ban a másoló konstruktor, vagy angolul "copy-constructor". Ez a konstruktor fontos szerepet játszik az argumentum
RészletesebbenBevezetés a programozásba Előadás: A const
Bevezetés a programozásba 2 6. Előadás: A const ISMÉTLÉS Interface - Implementation struct Particle { int x,y; unsigned char r,g,b; void rajzol(); }; }; void Particle::rajzol() { gout
RészletesebbenSzámítógép és programozás 2
Számítógép és programozás 2 10. Előadás Öröklődés http://digitus.itk.ppke.hu/~flugi/ Tagfüggvény struct Particle { int x,y; unsigned char r,g,b; void rajzol() { gout
RészletesebbenÖröklés és Polimorfizmus
Öröklés és Polimorfizmus Egy létező osztályból egy (vagy több) újat készítünk A létező osztályt ősnek, az újakat utódnak nevezzük Az utódok öröklik az ős minden tagját Az utódok az öröklött tagokat újakkal
RészletesebbenC++ programozási nyelv
C++ programozási nyelv Gyakorlat - 13. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. december A C++ programozási nyelv Soós Sándor 1/10 Tartalomjegyzék Objektumok
RészletesebbenElemi Alkalmazások Fejlesztése II.
Elemi Alkalmazások Fejlesztése II. Osztályok közötti kapcsolatok öröklődés asszociáció aggregáció kompozíció 1. Feladat Készítsünk programot, amellyel testek térfogatát határozhatjuk meg, illetve megadhatjuk
RészletesebbenSzármaztatási mechanizmus a C++ nyelvben
Származtatási mechanizmus a C++ nyelvben Miskolci Egyetem Általános Informatikai Tanszék CPP2 / 1 Az öröklődés s fogalma 1. Egy osztály deklarálható valamely más osztály(ok) leszármazottjaként. Az deklaráció
RészletesebbenJava VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.
Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum
RészletesebbenProgramozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 9. előadás Interface - típust vezet be, de osztálypéldány nem készíthető belőle (statikus típust ad) - több osztály is
RészletesebbenProgramozási nyelvek Java
statikus programszerkezet Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 2. előadás csomag könyvtárak könyvtárak forrásfájlok bájtkódok (.java) (.class) primitív osztály
RészletesebbenProgramozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 8. előadás Öröklődés - megnyitunk egy osztályt egy másik előtt zárt egységeket szeretünk készíteni (láthatósági kérdés:
Részletesebbenés az instanceof operátor
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
RészletesebbenBevezetés a programozásba Előadás: Objektumszintű és osztályszintű elemek, hibakezelés
Bevezetés a programozásba 2 7. Előadás: Objektumszű és osztályszű elemek, hibakezelés ISMÉTLÉS Osztály class Particle { public: Particle( X, X, Y); virtual void mozog( ); ); virtual void rajzol( ) const;
RészletesebbenJava VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Részletesebben1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon
1. Template (sablon) 1.1. Függvénysablon Maximum függvény megvalósítása függvénynév túlterheléssel. i n l i n e f l o a t Max ( f l o a t a, f l o a t b ) { return a>b? a : b ; i n l i n e double Max (
RészletesebbenBME MOGI Gépészeti informatika 8.
BME MOGI Gépészeti informatika 8. 1. feladat Készítse beosztottak és vezetők munkahelyi adatait kezelő alkalmazást! A feladat megoldásához hozza létre a következő osztályokat! Beosztott osztály: adatmező
RészletesebbenFelhasználó által definiált adattípus
Felhasználó által definiált adattípus C++ Izsó Tamás 2017. február 24. Izsó Tamás Felhasználó által definiált adattípus/ 1 Irodalom Izsó Tamás Felhasználó által definiált adattípus/ 2 Programtervezési
RészletesebbenProgramozási nyelvek JAVA EA+GY 1. gyakolat
Programozási nyelvek JAVA EA+GY 1. gyakolat EÖTVÖS LORÁND TUDOMÁNYEGYTEM INFORMATIKAI KAR PROGRAMOZÁSI NYELVEK ÉS FORDÍTÓPROGRAMOK TANSZÉK 2018/2019. tavaszi félév Tartalom 1 A Java alapjai 2 Java program
RészletesebbenProgramozás alapjai II. (4. ea) C++
Programozás alapjai II. (4. ea) C++ konstruktor és értékadás, dinamikus szerkezetek Szeberényi Imre, Somogyi Péter BME IIT M Ű E G Y E T E M 1 7 8 2 C++ programozási nyelv BME-IIT Sz.I.
RészletesebbenProgramozás alapjai II. (4. ea) C++
Programozás alapjai II. (4. ea) C++ konstruktor és értékadás, dinamikus szerkezetek Szeberényi Imre, Somogyi Péter BME IIT M Ű E G Y E T E M 1 7 8 2 C++ programozási nyelv BME-IIT Sz.I.
RészletesebbenProgramozás C++ -ban
Programozás C++ -ban 4. Bevezetés az osztályokba 4.1 Az adatokhoz való hozzáférés ellenőrzése Egy C programban a struktúrák minden része mindig elérhető. Ugyanakkor ez nem a legkedvezőbb helyzet. Több
RészletesebbenProgramozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia
Öröklés ism. Programozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia Szeberényi Imre BME IIT Egy osztályból olyan újabb osztályokat származtatunk, amelyek rendelkeznek
RészletesebbenJava programozási nyelv 5. rész Osztályok III.
Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék
RészletesebbenObjektumorientált programozás C# nyelven
Objektumorientált programozás C# nyelven 2. rész Öröklés és többalakúság Nemvirtuális metódusok, elrejtés Virtuális metódusok, elrejtés Típuskényszerítés, az is és as operátorok Absztrakt osztályok, absztrakt
RészletesebbenObjektumelvű programozás
Objektum, osztály Objektumelvű programozás Az elemzés együttműködő objektumok rendszereként fogalmazza meg a feladatot. Objektum-központú elemzés A tervezés a feladat tárgyköreit egy-egy objektum felelősségévé
RészletesebbenC++ Gyakorlat jegyzet 5. óra. A C++ szabvány több memóriatípust különít el. Ezek közül elsősorban a stack-et használtuk eddig.
C++ Gyakorlat jegyzet 5. óra. A jegyzetet Umann Kristóf készítette Horváth Gábor gyakorlatán. (01. január 6.) 1. A C++ memóriamodellje A C++ szabvány több memóriatípust különít el. Ezek közül elsősorban
RészletesebbenBevezetés, a C++ osztályok. Pere László
Programozás módszertan II. p. Programozás módszertan II. Bevezetés, a C++ osztályok Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK
RészletesebbenKivételkezelés, beágyazott osztályok. Nyolcadik gyakorlat
Kivételkezelés, beágyazott osztályok Nyolcadik gyakorlat Kivételkezelés Nem minden hibát lehet fordítási időben megtalálni Korábban (pl. C-ben) a hibakezelést úgy oldották meg, hogy a függvény hibakódot
Részletesebben- 1 - Konstansok használata. Döntsük el, van-e fordítási idejű hiba az alábbi programrészletekben! a) const char * str="zh"; str[0]++;
Az alábbi feladatokat a AUT.BME.HU tanszéki weboldalon fellelhető AUT C++ Példatárból másoltam ki. A feladatokat a Programozás alapjai 2. ZH-ra való felkészülés jegyében válogattam, a példák nagy részét
Részletesebben500. CC Megoldó Alfréd CC 500.
Programozás alapjai 2. PótZH 2010.05.20. gyakorlat: G1/IB.146 Hiány:3 ZH:7,71 MEGOLD SCH/500. Hftest: 0 ZHp: Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,
RészletesebbenVirtuális függvények (late binding)
Virtuális függvények (late binding) Miskolci Egyetem Általános Informatikai Tanszék Virtuális függvények CPP5 / 1 Azonos nevű függvények megkülönböztetése paraméterszignatúra (függvény overloading) - egy
RészletesebbenProgramozás II gyakorlat. 6. Polimorfizmus
Programozás II gyakorlat 6. Polimorfizmus Típuskonverziók C-ben: void * ptr; int * ptr_i = (int*)ptr; Ez működik C++-ban is. Használjuk inkább ezt: int * ptr_i = static_cast(ptr); Csak egymással
RészletesebbenAz alábbi példában a Foo f(5); konstruktor hívása után mennyi lesz f.b értéke? struct Foo { int a, b; Foo(int c):a(c*2),b(c*3) {} };
A C++ kódokban lévő makrókat melyik egység dolgozza fel az alábbiak közül? preprocessor A szabványos C++-ban nem is írhatunk makrókat (csak C-ben) assembler linker Az alábbi példában a Foo f(5); konstruktor
RészletesebbenObjektumorientált szoftverfejlesztés alapjai
Objektumorientált szoftverfejlesztés alapjai Gyakorlatorientált szoftverfejlesztés C++ nyelven Visual Studio Community fejlesztőkörnyezetben @Katona József Kővári Attila Lektorálta: Dr. Fauszt Tibor DOI:
RészletesebbenSzámítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás
Számítástechnika II. BMEKOKAA153 2. Előadás Dr. Bécsi Tamás Tömbök (Arrays) Definíció: típus[] név; (pld. int[] szamok; ) Inicializálás: int[] szamok = new int[4]; int[] szamok = 1,2,4,3,5}; int[] szamok
RészletesebbenProgramozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós április 4. Széchenyi István Egyetem, Gy r
Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. április 4. Számok rendezése Feladat: Fejlesszük tovább úgy a buborék rendez algoritmust bemutató példát, hogy a felhasználó adhassa meg a
RészletesebbenC programozási nyelv Pointerek, tömbök, pointer aritmetika
C programozási nyelv Pointerek, tömbök, pointer aritmetika Dr. Schuster György 2011. június 16. C programozási nyelv Pointerek, tömbök, pointer aritmetika 2011. június 16. 1 / 15 Pointerek (mutatók) Pointerek
RészletesebbenJava III. I I. Osztálydefiníció (Bevezetés)
Java III. I I. Osztálydefiníció (Bevezetés) Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 02. 27. Java III.: Osztály definíció JAVA3 / 1 Szintaktikai jelölések A továbbiakban
RészletesebbenOOP: Java 8.Gy: Abstract osztályok, interfészek
OOP: Java 8.Gy: Abstract osztályok, interfészek 26/1 B ITv: MAN 2019.04.03 Abszrakt metódus és absztrakt osztály. Gyakran előfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy valamilyen metódus
RészletesebbenBevezetés a programozásba II. 5. Előadás: Másoló konstruktor, túlterhelés, operátorok
Bevezetés a programozásba II 5. Előadás: Másoló konstruktor, túlterhelés, operátorok Emlékeztető struct Vektor { int meret, *mut; Vektor(int meret); int szamlal(int mit); }; int Vektor::szamlal(int mit)
RészletesebbenKivételkezelés a C++ nyelvben Bevezetés
Kivételkezelés a C++ nyelvben Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Kivételkezelés a C++ nyelvben CPP9 / 1 Hagyományos hibakezelés Függvény visszatérési értéke (paramétere) hátrányai:
RészletesebbenC# osztálydeníció. Krizsán Zoltán 1. .net C# technológiák tananyag objektum orientált programozás tananyag
C# osztálydeníció Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem.net C# technológiák tananyag objektum orientált programozás tananyag Tartalom 1 Bevezetés 2 Osztály létrehozása, deníció
RészletesebbenJava III. I I. Osztálydefiníció (Bevezetés)
Java III. I I. Osztálydefiníció (Bevezetés) Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 02. 27. Java III.: Osztály definíció JAVA3 / 1 Szintaktikai jelölések A továbbiakban
RészletesebbenMemóriakezelés, dinamikus memóriakezelés
Metódus: függvények és eljárások összefoglaló neve. Memóriakezelés, dinamikus memóriakezelés Nézzük végig, a C++ memóriakezelését. Alapvetően három fő memóriaterületet különböztetünk meg. Végrehajtási
RészletesebbenProgramozás. Bevezetés. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék
Programozás Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 11. Tantárgy célja, szükséges ismeretek Tantárgy célja,
RészletesebbenProgramozás BMEKOKAA146. Dr. Bécsi Tamás 5. előadás
Programozás BMEKOKAA146 Dr. Bécsi Tamás 5. előadás Tömbök átméretezése public static void Resize( ref T[] array, int newsize ) Példa: int[] a=new int[20]; Array.Resize(ref a, 22); 2016. 10. 19.
Részletesebben0.2.1 Operátorok túlterhelése (műveletek definiálhatók felhaszn. típusokra) Kutya. Eb1. Eb2. Név (txt): Rex. Blöki. Német juhász 3
0 Az objektum-orientáltság 0.1 Objektum fogalma Egy rendszer egyedileg azonosítható szereplője adatokkal és működéssel. Egységbezárás (encapsulation) - viselkedés a külvilág felé - belső struktúra (kívülről
RészletesebbenBevezetés a C++ programozási nyelvbe
Bevezetés a C++ programozási nyelvbe Miskolci Egyetem Általános Informatikai Tanszék CPP0 / 1 Története A C++ programozási nyelv a C programozási nyelv objektum orientált kiterjesztése. Az ANSI-C nyelvet
RészletesebbenAlkalmazott modul: Programozás 9. előadás. Strukturált programozás: dinamikus adatszerkezetek
Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás 9. előadás Strukturált programozás: dinamikus adatszerkezetek Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
RészletesebbenA szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok
A szemantikus elemzés helye Forrásprogram Forrás-kezelő (source handler) Lexikális elemző (scanner) A szemantikus elemzés feladatai Fordítóprogramok előadás (A, C, T szakirány) Szintaktikus elemző (parser)
RészletesebbenSmart Pointer koncepciója
Smart Pointer koncepciója ( Egyszerű Smart Pointer implementálása C++ nyelven ) Bevezetés Mik a smart pointer-ek 1? A válasz egyszerű; a smart pointer-ek olyan mutatók amik okosak. Mit is jelent ez pontosan?
RészletesebbenProgramozási nyelvek a közoktatásban alapfogalmak II. előadás
Programozási nyelvek a közoktatásban alapfogalmak II. előadás Szintaxis, szemantika BNF szintaxisgráf absztrakt értelmező axiomatikus (elő- és utófeltétel) Pap Gáborné. Szlávi Péter, Zsakó László: Programozási
RészletesebbenELTE SAP Excellence Center Oktatóanyag 1
Oktatóanyag 1 Oktatóanyag 2 Az oktatás folyamán használt példák a fent látható egyszerű modell implementációi. Oktatóanyag 3 A definíciós részben definiálja a fejlesztő az egyes attribútumokat, metódusokat,
Részletesebben1.1. A forrásprogramok felépítése Nevek és kulcsszavak Alapvető típusok. C programozás 3
Darvay Zsolt Típusok és nevek a forráskódban Állandók és változók Hatókörök és az előfeldolgozó Bevitel és kivitel Kifejezések Utasítások Mutatók Függvények Struktúrák és típusok Állománykezelés C programozás
Részletesebben1.AA MEGOLDÓ BERCI AA 1.
Programozás alapjai 2. (inf.) 2. zárthelyi 2015.05.07. gyak./lab. hiányzás: 3/2 Minden beadandó megoldását a feladatlapra, a feladat után írja! Készíthet piszkozatot, de csak a feladatlapra írt megoldásokat
RészletesebbenC++ programozási nyelv Konstruktorok Gyakorlat
C++ programozási nyelv Konstruktorok Gyakorlat Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. október A C++ programozási nyelv Soós Sándor 1/17 Tartalomjegyzék
RészletesebbenObjektum orientált kiterjesztés A+ programozási nyelvhez
Szegedi Tudományegyetem Informatikai Tanszékcsoport Objektum orientált kiterjesztés A+ programozási nyelvhez Diplomamunka terve Készítette: Bátori Csaba programtervező matematikus hallgató Témavezető:
RészletesebbenMutatók és mutató-aritmetika C-ben március 19.
Mutatók és mutató-aritmetika C-ben 2018 március 19 Memória a Neumann-architektúrában Neumann-architektúra: a memória egységes a címzéshez a természetes számokat használjuk Ugyanabban a memóriában van:
RészletesebbenProgramozási nyelvek Java
Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked
RészletesebbenProgramozási alapismeretek 4.
Programozási alapismeretek 4. Obejktum-Orientált Programozás Kis Balázs Bevezetés I. Az OO programozási szemlélet, egy merőben más szemlélet, az összes előző szemlélettel (strukturális, moduláris, stb.)
RészletesebbenProgramozási nyelvek Java
-en objektumot tárolunk. Automatikus változók Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 3. előadás - végrehajtási vermen (execution stack) jönnek létre - alprogramok
Részletesebben128. AA Megoldó Alfréd AA 128.
Programozás alapjai 2. PótZH 2010.05.20. gyakorlat: Hiány:0 ZH: MEGOLD SEHOL/5. Hftest: 0 ZHp: Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti, hogy minden
RészletesebbenProgramozás II gyakorlat. 7. Példák a polimorfizmus alkalmazásaira
Programozás II gyakorlat 7. Példák a polimorfizmus alkalmazásaira Probléma class A { public: ~A() { cout
Részletesebben