3. Osztályok II. Programozás II
|
|
- Fanni Bakosné
- 4 évvel ezelőtt
- Látták:
Átírás
1 3. Osztályok II. Programozás II
2 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 el kell látni függvényekkel, hogy a listához új neveket adhassunk, illetve lekérdezhessük azokat. 2
3 Bevezető feladat add: A paraméterében megadott stringet hozzáadja a névsorhoz, ha ez már nem lehetséges, akkor hamis értékkel tér vissza, egyébként igazzal nevekszama: Visszaadja az eddig eltárolt neveket nev: Visszaadja a paraméterben megadott indexü nevet (az index 0-ról indul) 3
4 Megoldás class Nevsor { string * nevek; int kapacitas; int elemekszama; public: Nevsor(int mennyi) { nevek = new string[mennyi]; kapacitas = mennyi; elemekszama = 0; 4
5 Megoldás bool add(const string & ujnev) { if (elemekszama < kapacitas) { nevek[elemekszama] = ujnev; elemekszama++; return true; return false; int nevekszama() const { return elemekszama; const string & nev(int index) const { return nevek[index]; ; 5
6 Megoldás int main() { Nevsor avengers(5); avengers.add("hulk"); avengers.add("iron Man"); cout << avengers.nevekszama() << endl; int index; for (index = 0; index < avengers.nevekszama(); index++) { cout << avengers.nev(index) << endl; return 0; 6
7 Sor 0 Hulk 1 Iron Man elemekszama = 2 kapacitas = 5 7
8 Felszabadítás A Nevsor osztály tartalmaz egy mutatót egy dinamikusan lefoglalt tömbre A tömböt fel kell szabadítani A program vége előtt hívjunk meg egy clear függvényt? avengers.clear(); return 0; 8
9 Felszabadítás A Nevsor osztály tartalmaz egy mutatót egy dinamikusan lefoglalt tömbre A tömböt fel kell szabadítani A program vége előtt hívjunk meg egy clear függvényt? avengers.clear(); return 0; 9
10 Destruktor A konstruktor ellentéte, akkor hívódik meg, mikor az objektum megszűnik Felszabadításra használjuk Szintaktika: ~ jel után az osztály neve Csak egy destruktor van, nincsen paramétere Nincsen visszatérési érték típus a függvény neve előtt 10
11 class Nevsor { public: Destruktor string * nevek; int kapacitas; int elemekszama; ~Nevsor() { Hullám vonal delete [] nevek; Nincsen visszatérési érték típus Az osztály neve 11
12 Destruktor Fontos! Ha tömböt szabadítunk fel, akkor a delete után kötelező a [] Ennek hatására a tömbben lévő minden objektumra meghívódik a destruktor Ha elhagyjuk a []-t akkor csak a tömb első elemére hívódik meg a destruktor 12
13 Mi történik? void foo(nevsor lista) { lista.add("deadpool"); int main() { Nevsor avengers(3); avengers.add("hulk"); foo(avengers); avengers.add("iron Man"); 13
14 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor 14
15 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers kapacitas =? elemekszama =? nevek =? class Nevsor { public: Nevsor(int mennyi) { nevek = new string [mennyi]; kapacitas = mennyi; elemekszama = 0; 15
16 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers kapacitas =? elemekszama =? nevek class Nevsor { public: Nevsor(int mennyi) { nevek = new string [mennyi]; kapacitas = mennyi; elemekszama = 0;
17 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama =? nevek class Nevsor { public: Nevsor(int mennyi) { nevek = new string [mennyi]; kapacitas = mennyi; elemekszama = 0;
18 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 0 nevek class Nevsor { public: Nevsor(int mennyi) { nevek = new string [mennyi]; kapacitas = mennyi; elemekszama = 0;
19 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 0 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++;
20 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 0 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man
21 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man
22 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek Iron Man 22
23 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek
24 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek 1 Deadpool 2 24
25 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man Nevsor avengers elemekszama = 1 nevek lista elemekszama = 2 nevek 1 Deadpool 2 25
26 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama = 2 nevek class Nevsor { public: ~Nevsor() { delete [] nevek; 0 Iron Man 1 Deadpool 2 26
27 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man 1 Deadpool 2 27
28 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man 1 Deadpool 2 28
29 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 29
30 Probléma A másolatban lévő pointer ugyanarra a tömbre mutatott, mint az eredeti objektum pointere 2 probléma: A másolat objektum felszabadította a tömböt Ha másolatként adunk át valamit, akkor azt várjuk, hogy a másolat ne legyen kapcsolatban az eredeti objektummal 30
31 Probléma Az objektumhoz fizikailag nem tartozik hozzá a tömb, csak a rá mutató pointer A másolat létrehozásakor alap esetben csupán az objektum tagváltozói másolódnak le Mi azonban tudjuk, hogy magát a tömböt is le kell másolni 31
32 Másoló konstruktor Nevsor(const Nevsor & masik) { kapacitas = masik.kapacitas; elemekszama = masik.elemekszama; nevek = new string[kapacitas]; int i; for (i = 0; i < elemekszama; i++) { nevek[i] = masik.nevek[i]; 32
33 Másoló konstruktor A paraméter a lemásolandó objektum referenciája Akkor hívódik meg, mikor másolat jön létre az objektumról, például érték szerinti paraméterátadáskor A referencia kötelező, különben a másoló konstruktor hívásakor végtelen ciklus alakulna ki 33
34 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista kapacitas =? elemekszama =? nevek =? Nevsor(const Nevsor & masik) { kapacitas = masik.kapacitas; elemekszama = masik.elemekszama; nevek = new string[kapacitas]; int index; for (index = 0; index < elemekszama; index++) { nevek[index] = masik.nevek[index]; 0 Iron Man
35 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama =? nevek =? Nevsor(const Nevsor & masik) { kapacitas = masik.kapacitas; elemekszama = masik.elemekszama; nevek = new string[kapacitas]; int index; for (index = 0; index < elemekszama; index++) { nevek[index] = masik.nevek[index]; 0 Iron Man
36 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek =? Nevsor(const Nevsor & masik) { kapacitas = masik.kapacitas; elemekszama = masik.elemekszama; nevek = new string[kapacitas]; int index; for (index = 0; index < elemekszama; index++) { nevek[index] = masik.nevek[index]; 0 Iron Man
37 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek Nevsor(const Nevsor & masik) { kapacitas = masik.kapacitas; elemekszama = masik.elemekszama; nevek = new string[kapacitas]; int index; for (index = 0; index < elemekszama; index++) { nevek[index] = masik.nevek[index]; 0 Iron Man
38 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek Nevsor(const Nevsor & masik) { kapacitas = masik.kapacitas; elemekszama = masik.elemekszama; nevek = new string[kapacitas]; int index; for (index = 0; index < elemekszama; index++) { nevek[index] = masik.nevek[index]; 0 Iron Man 0 Iron Man
39 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man 0 Iron Man Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek Deadpool 2 39
40 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek lista elemekszama = 1 nevek class Nevsor { public: ~Nevsor() { delete [] nevek; 0 Iron Man 0 Iron Man Deadpool 40
41 Működés void foo(nevsor lista) { lista.add("deadpool"); [ ] Nevsor avengers(3); avengers.add("iron Man"); foo(avengers); avengers.add("hulk"); Nevsor avengers elemekszama = 1 nevek class Nevsor { public: bool add(const string & ujnev) { [ ] nevek[elemekszama] = ujnev; elemekszama++; 0 Iron Man 1 Hulk 2 41
42 Megjegyzés A másoló konstruktor (mint minden konstruktor) akkor hívódik meg, ha a létrejövő objektum egy másik másolata lesz Point2D a, b; Másoló konstruktor Point2D c = a; b = a; b már létezik, tehát nem a másoló konstruktor hívódik meg, hanem valami más 42
43 Több forráskódból álló programok main.cpp point2d.cpp line.cpp 41
44 Több forráskódból álló programok main.cpp point2d.cpp line.cpp Fordító main.o gépikód Point2D a; a.setx(21); Hova ugorjon a program a setx függvény meghívásakor? 42
45 Több forráskódból álló programok main.cpp point2d.cpp line.cpp Fordító main.o gépikód Point2D a; a.setx(21); Hova ugorjon a program a setx függvény meghívásakor? point2d.o setx gépi kódja line.o gépi kód 43
46 Több forráskódból álló programok main.o gépi kód Point2D a; a.setx ->? point2d.o setx gépi kódja line.o gépi kód Linker Az elkészült program a.setx -> setx gépi kódja 44
47 Több forrásfájlból álló programok Fontos: A forrásfájlokat egymástól függetlenül kell lefordítani Probléma: Ha a main.cpp forrásfájlban hivatkozunk a Point2D osztályra, amely a point2d.cpp-ben van, akkor a main.cpp nem fordítható le, mivel annak fordításakor a fordító nem ismeri a Point2D osztályt. 47
48 Több forrásfájlból álló programok Megoldás: Helyezzük el a main.cpp-ben a Point2D osztály deklarációját: class Point2D { double x, y; string name; public: const string & getname() const; Point2D(const string & nev); double length() const; void setx(double x); void sety(double y); double getx() const; double gety() const; ; 48
49 Több forrásfájlból álló programok Ennek a deklarációnak egyeznie kell azzal, amit a point2d.cpp-ben megvalósítunk. Ötlet: Helyezzük el ezt a deklarációt egy külön header fájlban, a point2d.h-ban! A point2d.h-t include-oljuk minden fájlban, ahol a Point2D osztályra hivatkozunk (például main.cpp, point2d.cpp) 49
50 Több forrásfájlból álló programok point2d.h tartalma: #ifndef POINT2D_H_ #define POINT2D_H_ class Point2D { [ ] ; #endif header guard, hogy ne okozzon gondot, ha ezt a fájlt több fájlba is include-oljuk 50
51 Több forrásfájlból álló programok point2d.cpp-ben pedig elhelyezzük az osztály tagfüggvényeinek a definícióit: #include point2d.h Point2D::Point2D(const string & nev): name(nev){ x = 0; y = 0; double Point2D::length() { return sqrt(x * x + y * y); Jelezzük, hogy melyik osztály függvényeiről van szó 51
52 Feladat Írj egy Halmaz osztályt, amely egész számokat tárol 0-tól N-1-ig. Az osztály konstruktora megkapja paraméterben az N értékét, és üresre inicializálja az objektumot. Írd meg a konstruktort, destruktort, másoló konstruktort. A Halmaz osztály számára készíts külön header és forrás fájlt! 52
53 Feladat A Halmaz osztály függvényei: hozzaad(int) : Hozzáadja a halmazhoz a paraméterben megadott értéket, ha az kisebb, mint N, és nem negatív, egyébként nem csinál semmit kivon(int) : Az előző függvény ellentéte, eltávolítja a paraméterben megadott értéket mennyi: Megadja, hogy mennyi számot tárolunk jelenleg a halmazban 53
54 Házi feladat Az eddigi házi feladatokban megírt forráskódot bontsd szét több forrásfájlra. Az osztályoknak legyen 1-1 külön header és forrás fájljuk. Mostantól minden osztályt így kell megírni a házi feladatokban 54
55 Házi feladat Módosítsd a Lovag osztályt úgy, hogy a benne lévő 10 elemű tömb helyett egy dinamikusan növekvő tömbbel helyettesítsd A tömb kezdetben 0 elemet tartalmaz Minden új tárgy hozzáadásakor megnöveljük a tömb méretét 1-el 55
56 Házi feladat Tipp: A tömböt minden bővítéskor foglaljuk újra, majd a régi tömb tartalmát másoljuk az újba, a régit pedig szabadítsuk fel A hozzáadó függvénynek nem kell logikai értékkel visszatérnie Gondoskodj a tömb megfelelő felszabadításáról, és biztosítsd a Lovag helyes lemásolását is 56
57 Házi feladat Írj egy Menu osztályt, amely egy menüt kezel Az osztály menüpontokat tárol, a menüpont egy megjelenítendő feliratból, és egy rövid, egyedi string azonosítóból áll A menüpontokat szintén dinamikusan növekvő tömbben tároljuk Példa: A lovag adatai listázás menüpontjának felirata: Lovag adatai, azonosítója: adatok 57
58 Házi feladat A Menu objektumok kezdetben egy menüpontot se tárolnak Írj függvényt, amellyel új menüpontot adhatunk a menühöz, a függvénynek meg kell adni a feliratot és az azonosítót A függvény térjen vissza igaz értékkel, ha a megadott azonosítóval még nem létezik menüpont, és ekkor tárolja is el az új menüpontot, egyébként hamissal térjen vissza, és ne bővítse a menüpont listát 58
59 Házi feladat Írj függvényt a Menu osztályhoz, amely kiírja a menüpontokat a képernyőre A függvény egy sorba írja a menüpontot, majd utána az azonosítóját, például: Lovag adatainak listázása : adatok Új tárgy hozzáadása : targyad Kilépés : kilep 59
60 Házi feladat Írj függvényt a Menu osztályhoz, amelynek átadhatunk egy stringet. Ha a megadott string (menü azonosító), már egy létező azonosító, akkor a függvény hamis, ellenkező esetben pedig igaz értékkel térjen vissza, és csak ez esetben adja hozzá a menüpontot a listához Gondoskodj a megfelelő felszabadításról, és a helyes másoló konstruktorról 60
61 Házi feladat Az eddigi statikus menüt cseréld ki az új Menu osztállyal A program hozzon létre egy objektumot a Menu osztályból A program először töltse fel a Menu objektumot menüpontokkal Az objektum hozzáadó függvény hamis visszatérési értéke esetén a program hibaüzenettel lépjen ki 61
62 Házi feladat A menü kirajzolását a létrehozott objektum végezze el A programban most már ne számokkal, hanem az azonosítók beírásával lehessen menüt választani Ha nem létező azonosítót írunk be, akkor adjon hibaüzenetet a program (az ellenőrzéshez használjuk a menü objektumot) 62
63 Házi feladat Fontos: A Menu osztály csupán abban segít, hogy a menüt kiírjuk, azt alkalomadtán bővíteni tudjuk, illetve ellenőrizhessük a segítségével, hogy helyes menüpontot választottunk-e A Menu osztályhoz nem tartoznak hozzá az egyes menüpontokhoz tartozó funkciók, azokat továbbra is a fő forrásfájlban kell megvalósítani 63
Programozá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észletesebben1. Alapok. Programozás II
1. Alapok Programozás II Elérhetőség Név: Smidla József Elérhetőség: smidla dcs.uni-pannon.hu Szoba: I916 2 Irodalom Bjarne Stroustrup: A C++ programozási nyelv 3 Irodalom Erich Gamma, Richard Helm, Ralph
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 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észletesebben4. Öröklődés. Programozás II
4. Öröklődés Programozás II Mielőtt belevágunk Egy Tárgy típusú objektumokat tároló tömb i. elemében tároljunk el egy új tárgyat Rossz módszer: tomb[i].setnev( uj.getnev() ); tomb[i].setertek( uj.getertek()
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é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é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észletesebbenSTL gyakorlat C++ Izsó Tamás május 9. Izsó Tamás STL gyakorlat/ 1
STL gyakorlat C++ Izsó Tamás 2016. május 9. Izsó Tamás STL gyakorlat/ 1 Komponensek kapcsolata Deklarálja az alábbi osztálydiagramon szereplő osztályok közül az A, AA és AB osztályokat! A konstruktorokat
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észletesebbenBME MOGI Gépészeti informatika 7.
BME MOGI Gépészeti informatika 7. 1. feladat Írjon Windows Forms alkalmazást egy kör és egy pont kölcsönös helyzetének vizsgálatára! A feladat megoldásához hozza létre a következő osztályokat! Pont osztály:
RészletesebbenSzoftvertechnolo gia gyakorlat
Szoftvertechnolo gia gyakorlat Dr. Johanyák Zsolt Csaba http://johanyak.hu 1. Dependency Injection (függőség befecskendezés) tervezési minta A tervezési minta alapgondolata az, hogy egy konkrét feladatot
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észletesebbenA feladat lényege egy felhasználói típusnak a zsák típusnak a megvalósítása.
Feladat Készítsen egy egész számokat tartalmazó zsák típust! A zsákot dinamikusan lefoglalt tömb segítségével ábrázolja! Implementálja a szokásos műveleteket (elem betevése, kivétele, üres-e a halmaz,
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é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é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é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é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é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é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észletesebbenProgramozás II. 2. gyakorlat Áttérés C-ről C++-ra
Programozás II. 2. gyakorlat Áttérés C-ről C++-ra Tartalom Új kommentelési lehetőség Változók deklarációjának helye Alapértelmezett függvényparaméterek Névterek I/O műveletek egyszerűsödése Logikai adattípus,
RészletesebbenProgramozás C és C++ -ban
Programozás C és C++ -ban 2. További különbségek a C és C++ között 2.1 Igaz és hamis A C++ programozási nyelv a C-hez hasonlóan definiál néhány alap adattípust: char int float double Ugyanakkor egy új
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é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é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észletesebbenProgramozási Nyelvek: C++
Programozási Nyelvek: C++ Gyakorló feladatkönyv Umann Kristóf #include "CppStudent.h" int main() { CppStudent *reader = new CppStudent(); reader->readbook(); while(!reader->doesunderstand()) { reader->exercise();
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é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é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 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é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é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észletesebbenTartalomjegyzék. Általános Információ! 2. Felhasználói dokumentáció! 3. Feladat! 3. Környezet! 3. Használat! 3. Bemenet! 3. Példa!
Tartalomjegyzék Általános Információ! 2 Felhasználói dokumentáció! 3 Feladat! 3 Környezet! 3 Használat! 3 Bemenet! 3 Példa! 3 A program eredménye! 3 Példa! 3 Hibalehetőségek! 3 Példa! 3 Fejlesztői dokumentáció!
Részletesebben5. Gyakorlat. struct diak {
Rövid elméleti összefoglaló 5. Gyakorlat Felhasználó által definiált adattípusok: A typedef egy speciális tárolási osztály, mellyel érvényes típusokhoz szinonim nevet rendelhetünk. typedef létező_típus
RészletesebbenISA szimulátor objektum-orientált modell (C++)
Budapesti Műszaki és Gazdaságtudományi Egyetem ISA szimulátor objektum-orientált modell (C++) Horváth Péter Elektronikus Eszközök Tanszéke 2015. február 12. Horváth Péter ISA szimulátor objektum-orientált
RészletesebbenOAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1.
OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1. Feladat Szimuláljuk különféle élőlények túlélési versenyét. A lények egy pályán haladnak végig, ahol váltakozó viszonyok vannak. Egy lénynek
RészletesebbenJava Programozás 9. Gy: Java alapok. Adatkezelő 5.rész
Java Programozás 9. Gy: Java alapok Adatkezelő 5.rész 15/1 B ITv: MAN 2018.04.22 A Keresés funkció Programlogika: 1. A keresés az etm táblamodellben fog keresni, és a találat rekordokat átmásolja egy másik
Részletesebben8. gyakorlat Pointerek, dinamikus memóriakezelés
8. gyakorlat Pointerek, dinamikus memóriakezelés Házi ellenőrzés Egy számtani sorozat első két tagja A1 és A2. Számítsa ki a sorozat N- dik tagját! (f0051) Egy mértani sorozat első két tagja A1 és A2.
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é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észletesebbenProgramozás II. 2. Dr. Iványi Péter
Programozás II. 2. Dr. Iványi Péter 1 C++ Bjarne Stroustrup, Bell Laboratórium Első implementáció, 1983 Kezdetben csak precompiler volt C++ konstrukciót C-re fordította A kiterjesztés alapján ismerte fel:.cpp.cc.c
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észletesebbenSzerző. Varga Péter ETR azonosító: VAPQAAI.ELTE Email cím: Név: vp.05@hotmail.com Kurzuskód:
Szerző Név: Varga Péter ETR azonosító: VAPQAAI.ELTE Email cím: vp.05@hotmail.com Kurzuskód: IP-08PAEG/27 Gyakorlatvezető neve: Kőhegyi János Feladatsorszám: 20 1 Tartalom Szerző... 1 Felhasználói dokumentáció...
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észletesebbenProgramozás 2. gyakorlat
Programozás 2. gyakorlat Kötelező programok listája Tartalom Első projektmunka feladatok (Határidő: október 15. 08:00)... 2 1. Intervallum... 2 2. Igazolvány... 3 3. Telefon... 4 4. Tanulmányi rendszer...
RészletesebbenBevezetés a programozásba I.
Bevezetés a programozásba I. 9. gyakorlat Intelligens tömbök, mátrixok, függvények Surányi Márton PPKE-ITK 2010.11.09. C++-ban van lehetőség (statikus) tömbök használatára ezeknek a méretét fordítási időben
RészletesebbenBevezetés a programozásba I.
Bevezetés a programozásba I. 6. gyakorlat C++ alapok, szövegkezelés Surányi Márton PPKE-ITK 2010.10.12. Forrásfájlok: *.cpp fájlok Fordítás: a folyamat, amikor a forrásfájlból futtatható állományt állítunk
RészletesebbenObjektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN
Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.
RészletesebbenProgramozás II gyakorlat. 4. Öröklődés
Programozás II gyakorlat 4. Öröklődés Feladat Egy játékfejlesztő cég olyan programot fejleszt, amely nyilvántartja az alkalmazottai adatait. Tároljuk minden személy: Nevét (legfeljebb 50 karakter) Születési
RészletesebbenA lista eleme. mutató rész. adat rész. Listaelem létrehozása. Node Deklarálás. Létrehozás. Az elemet nekünk kell bef zni a listába
A lista eleme 0 adat rész mutató rész Listaelem létrehozása p: Node 0 0 3 0 Az elemet nekünk kell bef zni a listába Deklarálás struct Node { int int value; Node* next; next; adattagok Létrehozás Node*
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észletesebbenBevezetés a programozásba I 10. gyakorlat. C++: alprogramok deklarációja és paraméterátadása
Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 10. gyakorlat C++: alprogramok deklarációja és paraméterátadása 2011.11.22. Giachetta Roberto groberto@inf.elte.hu
RészletesebbenProgramozás C++ -ban 2007/4
Programozás C++ -ban 2007/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 szempontból is hasznos
RészletesebbenC++ programozási nyelv
C++ programozási nyelv Gyakorlat - 8. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. november A C++ programozási nyelv Soós Sándor 1/12 Tartalomjegyzék Miért
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észletesebbenC memóriakezelés. Mutató típusú változót egy típus és a változó neve elé írt csillag karakterrel hozhatjuk létre.
C memóriakezelés Ez a kis segédanyag az adatszerkezetek órán használt eszközök megértését hivatott elősegíteni. A teljesség igénye nélkül kerül bemutatásra a mutató típus és a dinamikus memóriakezelés.
RészletesebbenProgramozási nyelvek Java
Programozási nyelvek Java 2. gyakorlat Függvények Általános prototípus Módosítószavak Láthatóság: public, protected, private. Ha nem definiált, akkor úgynevezett package-private láthatóság. Lehet abstract
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é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észletesebbenMiután létrehoztuk, szeretnénk neki beszédesebb nevet adni. A név változtatásához a következőt kell tenni:
Excel objektumok Az excelben az osztályokat úgynevezett class modulokként hozzuk létre. Miután létrehoztuk, szeretnénk neki beszédesebb nevet adni. A név változtatásához a következőt kell tenni: View-ba
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é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é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észletesebbenC programozás. 6 óra Függvények, függvényszerű makrók, globális és
C programozás 6 óra Függvények, függvényszerű makrók, globális és lokális változók 1.Azonosítók A program bizonyos összetevőire névvel (azonosító) hivatkozunk Első karakter: _ vagy betű (csak ez lehet,
RészletesebbenA gyakorlat során az alábbi ábrán látható négy entitáshoz kapcsolódó adatbevitelt fogjuk megoldani.
Vizuális programozás 1. A gyakorlat célja A gyakorlat célja a Könyvtár alkalmazás folytatása az előző gyakorlaton elkészített grafikus felület felhasználásával. Elsőként lemásoljuk az előző gyakorlat eredményeként
Részletesebben15. Programok fordítása és végrehajtása
15. Programok fordítása és végrehajtása Programok fordítása és végrehajtása. (Fordítás és interpretálás, bytecode. Előfordító, fordító, szerkesztő. A make. Fordítási egység, könyvtárak. Szintaktikus és
RészletesebbenProgramozási nyelvek II. JAVA
Programozási nyelvek II. JAVA 8. gyakorlat 2017. november 6-10. Általános tudnivalók A feladatmegoldás során fontos betartani az elnevezésekre és típusokra vonatkozó megszorításokat, illetve a szövegek
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é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észletesebben117. AA Megoldó Alfréd AA 117.
Programozás alapjai 2. (inf.) pót-pótzárthelyi 2011.05.26. gyak. hiányzás: kzhpont: MEG123 IB.028/117. NZH:0 PZH:n Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,
RészletesebbenMaximum kiválasztás tömbben
ELEMI ALKALMAZÁSOK FEJLESZTÉSE I. Maximum kiválasztás tömbben Készítette: Szabóné Nacsa Rozália Gregorics Tibor tömb létrehozási módozatok maximum kiválasztás kódolása for ciklus adatellenőrzés do-while
RészletesebbenDr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS. Objektumorientált programozás 2015-2016
Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS 2015-2016 Objektumorientált programozás OOP PHP-ben 2 A PHP az 5.0-as verziójától megvalósítja az OO eszközrendszerét OO eszközök:
RészletesebbenProgramozási nyelvek II.: JAVA, 3. gyakorlat
Programozási nyelvek II.: JAVA, 3. gyakorlat 2017. szeptember 25-29. 2017. szeptember 25-29. Programozási nyelvek II.: JAVA, 3. gyakorlat 1 / 50 A 3. gyakorlat tematikája Osztályok deníciója Láthatósági
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észletesebbenCekla. Készítette Doxygen Tue Sep :13:44
Cekla Készítette Doxygen 1.7.1 Tue Sep 20 2011 14:13:44 TARTALOMJEGYZÉK 1 Tartalomjegyzék 1. Cekla C++ könyvtár deklaratív C++-hoz 1 2. Modulmutató 1 2.1. Modulok............................................
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észletesebbenOOP: Java 4.Gy: Java osztályok
OOP: Java 4.Gy: Java osztályok. 36/1 B ITv: MAN 2019.03.02 Feladat Készítsen el egy Employee osztályt és egy Employee osztályt használó osztályt (EmpProgram). Az Employee osztálynak: van name és salary
Részletesebben7. fejezet: Mutatók és tömbök
7. fejezet: Mutatók és tömbök Minden komolyabb programozási nyelvben vannak tömbök, amelyek gondos kezekben komoly fegyvert jelenthetnek. Először is tanuljunk meg tömböt deklarálni! //Tömbök használata
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é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észletesebbenBevezetés a Programozásba II 11. előadás. Adatszerkezetek megvalósítása. Adatszerkezetek megvalósítása Adatszerkezetek
Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 11. előadás 2014.05.12. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Adatszerkezetek
Részletesebben.AA Megoldó Alfréd AA.
Programozás alapjai 2. (inf.) pót zárthelyi 2013.05.23. gyak. hiányzás: kzh: ZH:0 ABCDEF MEG/200. Hftest: (p) Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,
RészletesebbenBevezetés a Programozásba II 4. előadás. Adattípusok hordozhatósága
Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 4. előadás 2014.03.03. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Programok
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észletesebbenProgramozás II. 6.Öröklés Dr. Iványi Péter
Programozás II. 6.Öröklés Dr. Iványi Péter 1 Öröklés Programozók lusta emberek, nem szeretnék valamit kétszer leírni Miért veszélyes? Nem hatékony Újra kell tárolni a kódot, újra le kell fordítani Karbantartás
RészletesebbenJava II. I A Java programozási nyelv alapelemei
Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak
RészletesebbenDinamikus csatolású függvénykönyvtár készítése és használata Plugin-szerű betöltés Egyszeű C++ osztályok készítése
FEJLETT PROGRAMOZÁSI NYELVEK, 2009 2. GYAKORLAT - Linux alatti C/C++ programozás Cél: Dinamikus csatolású függvénykönyvtár készítése és használata Plugin-szerű betöltés Egyszeű C++ osztályok készítése
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ás alapjai II. (1. ea) C++
Programozás alapjai II. (1. ea) C++ C++ kialakulása, nem OO újdonságok: 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. 2019.02.05.
RészletesebbenProgramozás alapjai II. (1. ea) C++
Programozás alapjai II. (1. ea) C++ C++ kialakulása, nem OO újdonságok: 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. 2019.02.05.
RészletesebbenBevezetés a programozásba előadás: Öröklődés
Bevezetés a programozásba 2 5. előadás: Öröklődés emlékeztető Tagfüggvény struct koord { double x,y,r; void set(double ux, double uy) { x=ux; y=uy; r=sqrt(x*x+y*y); } Használat: koord k; k.set(4,5); Egységbezárás
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észletesebbenTömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása
Tömbök kezelése Példa: Vonalkód ellenőrzőjegyének kiszámítása A számokkal jellemzett adatok, pl. személyi szám, adószám, taj-szám, vonalkód, bankszámlaszám esetében az elírásból származó hibát ún. ellenőrző
RészletesebbenA függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük.
Függvények A függvények névvel rendelkező utasításcsoportok, melyeknek információkat adhatunk át, és van egy visszatérési értékük. Mint egy dzsinn: Hogyan is "használunk" egy dzsinnt? megszólítjuk megmondjuk,
RészletesebbenPénzügyi algoritmusok
Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök
RészletesebbenJava Programozás 1. Gy: Java alapok. Ismétlés ++
Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk
RészletesebbenOOP: Java 8.Gy: Gyakorlás
OOP: Java 8.Gy: Gyakorlás 43/1 B ITv: MAN 2019.04.10 43/2 Egy régebbi beszámoló anyaga 1. Feladat: Készítsen egy Szemely nevű osztályt a szokásos konvenciók betartásával, amely tárolja egy ember nevét
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észletesebben