„Prog2 2. ZH kikérdező” változatai közötti eltérés
A VIK Wikiből
még több kérdés |
a még több kérdés és javítások |
||
(Egy közbenső módosítás ugyanattól a felhasználótól nincs mutatva) | |||
1. sor: | 1. sor: | ||
{{Vissza|Programozás alapjai II.}} | {{Vissza|Programozás alapjai II.}} | ||
{{Kvízoldal | {{Kvízoldal | ||
|cím=Prog2 2. ZH | |cím=Prog2 2. ZH kikérdező | ||
|pontozás=}} | |pontozás=}} | ||
25. sor: | 25. sor: | ||
# Grafikus elem: Funkcionális tortadiagram. | # Grafikus elem: Funkcionális tortadiagram. | ||
== Jelölje, hogy mely kijelentés(ek) igaz(ak)a C++ nyelvre! == | == Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre! == | ||
{{kvízkérdés|típus=több|válasz=1,3}} | {{kvízkérdés|típus=több|válasz=1,3}} | ||
# A sablon feldolgozása fordítási időben történik. | # A sablon feldolgozása fordítási időben történik. | ||
32. sor: | 32. sor: | ||
# Statikus tagfüggvény nem lehet inline. | # Statikus tagfüggvény nem lehet inline. | ||
== Jelölje, hogy mely kijelentés(ek) igaz(ak)a C++ nyelvre! == | == Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre! == | ||
{{kvízkérdés|típus=több|válasz=1,2}} | {{kvízkérdés|típus=több|válasz=1,2}} | ||
# C++-ban lehet függvényt balértékként használni. | # C++-ban lehet függvényt balértékként használni. | ||
38. sor: | 38. sor: | ||
# Az implicit értékadó operátor nem hívja meg az ősosztály értékadó operátorát, ezért örökléskor mindig kell értékadó operátort deklarálni. | # Az implicit értékadó operátor nem hívja meg az ősosztály értékadó operátorát, ezért örökléskor mindig kell értékadó operátort deklarálni. | ||
# Konstruktor nem dobhat kivételt. | # Konstruktor nem dobhat kivételt. | ||
== Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre! == | |||
{{kvízkérdés|típus=több|válasz=2,3}} | |||
# A dynamic_cast hiba esetén mindig kivételt dob. | |||
# Az STL asszociatív tárolói rendezetten tárolnak. | |||
# A const_iterator értéke megváltoztatható, csak az adat nem változtatható meg, amire az iterátor hivatkozik. | |||
# A perzisztens objektum állapota állandó, azaz az állapota nem változtatható meg. | |||
== Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre! == | |||
{{kvízkérdés|típus=több|válasz=3}} | |||
# Az adapter tervezési minta csak örökléssel valósítható meg. | |||
# A kivételosztályokat kötelező az std::exception osztályból származtatni. | |||
# Referencia típusú, nem statikus tagváltozó csak inicializáló listán inicializálható paraméterként átadott értékkel. | |||
# Az objektumok szerializációját a C++ automatikusan biztosítja, csupán a Serializable osztályból kell származtatni. | |||
== Melyik állítás igaz? == | |||
{{kvízkérdés|típus=egy|válasz=4}} | |||
# Egy osztály privát adatát közvetlenül csak a tagfüggvények érhetik el. | |||
# Egy osztály privát adatát közvetlenül csak a tagfüggvények és a leszármazott osztályok tagfüggvényei érhetik el. | |||
# Egy osztály privát adatát csak a leszármazott osztályok tagfüggvényei érhetik el. | |||
# Egy osztály privát adatát közvetlenül csak a tagfüggvények és a barát függvények érhetik el. | |||
== Adott a következő deklaráció: == | == Adott a következő deklaráció: == | ||
159. sor: | 182. sor: | ||
# Az 5. sor hibás, mert konstans tagfüggvény nem módosíthatja az objektum állapotát. | # Az 5. sor hibás, mert konstans tagfüggvény nem módosíthatja az objektum állapotát. | ||
# Az 5. sor hibás, mert nem lehet referencia típusú konstans függvény. | # Az 5. sor hibás, mert nem lehet referencia típusú konstans függvény. | ||
== C++ nyelvben a konstruktor lehet: == | |||
{{kvízkérdés|típus=több|válasz=2,3,7}} | |||
# statikus konstruktor | |||
# paraméter nélkül hívható, vagy default konstruktor | |||
# egy vagy több paraméterrel hívható konstruktor | |||
# konstans konstruktor | |||
# virtuális konstruktor | |||
# értékadó konstruktor | |||
# másoló konstruktor | |||
# funkcionális konstruktor |
A lap jelenlegi, 2021. május 15., 19:21-kori változata
Mi a tervezési minta?
- Ismétlődő kódrészlet.
- Objektumorientált programozás alapelve.
- Grafikus elem: a háttér grafikus mintázata.
- Gyakran előforduló problémák általános, újrafelhasználható megoldása.
Mi az adapter tervezési minta lényege?
- Grafikus elem: a taskbar-hoz való illesztést végzi.
- Lehetővé teszi két nem kompatibilis osztály együttműködését.
- Örökbefogadás modellezésére szolgál.
- Objektumorientált programozás alapelve.
Mi a funktor?
- Objektumorientált programozás alapelve.
- Funkcionális programozás alapelve.
- Függvényként használható objektum.
- Grafikus elem: Funkcionális tortadiagram.
Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre!
- A sablon feldolgozása fordítási időben történik.
- A try catch blokkban deklarált objektumokat a blokk után explicit módon meg kell szüntetni.
- A destruktor mindig meghívja a közvetlen ősosztály destruktorát, ha nincs virtuális öröklés.
- Statikus tagfüggvény nem lehet inline.
Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre!
- C++-ban lehet függvényt balértékként használni.
- Sablonnak lehet sablonparamétere is.
- Az implicit értékadó operátor nem hívja meg az ősosztály értékadó operátorát, ezért örökléskor mindig kell értékadó operátort deklarálni.
- Konstruktor nem dobhat kivételt.
Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre!
- A dynamic_cast hiba esetén mindig kivételt dob.
- Az STL asszociatív tárolói rendezetten tárolnak.
- A const_iterator értéke megváltoztatható, csak az adat nem változtatható meg, amire az iterátor hivatkozik.
- A perzisztens objektum állapota állandó, azaz az állapota nem változtatható meg.
Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre!
- Az adapter tervezési minta csak örökléssel valósítható meg.
- A kivételosztályokat kötelező az std::exception osztályból származtatni.
- Referencia típusú, nem statikus tagváltozó csak inicializáló listán inicializálható paraméterként átadott értékkel.
- Az objektumok szerializációját a C++ automatikusan biztosítja, csupán a Serializable osztályból kell származtatni.
Melyik állítás igaz?
- Egy osztály privát adatát közvetlenül csak a tagfüggvények érhetik el.
- Egy osztály privát adatát közvetlenül csak a tagfüggvények és a leszármazott osztályok tagfüggvényei érhetik el.
- Egy osztály privát adatát csak a leszármazott osztályok tagfüggvényei érhetik el.
- Egy osztály privát adatát közvetlenül csak a tagfüggvények és a barát függvények érhetik el.
Adott a következő deklaráció:
const char *p;
Igaz, vagy hamis?
p pointerrel elérhető memóriaterület nem változtatható meg.
- Igaz
- Hamis
Adott a következő kódrészlet:
int a1 = 1; int b1 = 2; int &tmp = a1; a1 = b1; b1= tmp;
A kódrészlet lefutása után melyik állítás helyes?
- a1 == 1 és b1 == 2
- a1 == 2 és b1 == 1
- a1 == 1 és b1 == 1
- a1 == 2 és b1 == 2
Adott a következő deklaráció:
struct A { virtual void foo() { std::cout << "A\n"; } void bar() { foo(); } }; struct B : public A { void foo() { std::cout << "B\n"; } };
Mit ír ki a következő kódrészlet?
A* pa = new B; pa->foo();
- A
- B
- A kódrészlet hibás pa változó nem kaphat értékül B objektumra mutató pointert.
Adott a következő deklaráció:
struct A { virtual void foo() { std::cout << "A\n"; } void bar() { foo(); } }; struct B : public A { void foo() { std::cout << "B\n"; } };
Mit ír ki a következő kódrészlet?
A* pa = new B; pa->A::foo();
- A
- A kódrészlet hibás pa változó nem kaphat értékül B objektumra mutató pointert.
- B
Adott a következő deklaráció:
struct A { virtual void foo() { std::cout << "A\n"; } void bar() { foo(); } }; struct B : public A { void foo() { std::cout << "B\n"; } };
Mit ír ki a következő kódrészlet?
B b; b.bar();
- A
- A kódrészlet hibás, mert a B osztálynak nincs bar() tagfüggvénye.
- B
Adott a következő deklaráció:
class A { int a; public: A() : a(0) {} // 4. sor int &inc() const { return a++; } // 5. sor };
Melyik állítás igaz?
- A 4. sor hibás, mert inicializáló listán csak objektum szerepelhet. Az a adattag pedig nem objektum.
- Az 5. sor hibás, mert privát adat referenciáját nem lehet képezni.
- Az 5. sor hibás, mert konstans tagfüggvény nem módosíthatja az objektum állapotát.
- Az 5. sor hibás, mert nem lehet referencia típusú konstans függvény.
C++ nyelvben a konstruktor lehet:
- statikus konstruktor
- paraméter nélkül hívható, vagy default konstruktor
- egy vagy több paraméterrel hívható konstruktor
- konstans konstruktor
- virtuális konstruktor
- értékadó konstruktor
- másoló konstruktor
- funkcionális konstruktor