„Prog2 2. ZH kikérdező” változatai közötti eltérés

Wirker Dávid Zoltán (vitalap | szerkesztései)
Prog2 új 2. ZH kikérdező
 
Wirker Dávid Zoltán (vitalap | szerkesztései)
a még több kérdés és javítások
 
(4 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 Igaz/Hamis kikérdező
|cím=Prog2 2. ZH kikérdező
|pontozás=}}
|pontozás=}}


11. sor: 11. sor:
# Gyakran előforduló problémák általános, újrafelhasználható megoldása.
# Gyakran előforduló problémák általános, újrafelhasználható megoldása.


== Mi az adapter tervezési minta lényege? ==
{{kvízkérdés|típus=egy|válasz=2}}
# 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? ==
{{kvízkérdés|típus=egy|válasz=3}}
# 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! ==
== Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre! ==
{{kvízkérdés|típus=több|válasz=1,3,5}}
{{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.
# A try catch blokkban deklarált objektumokat a blokk után explicit módon meg kell szüntetni.
# 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.
# 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.
# Statikus tagfüggvény nem lehet inline.
== Jelölje, hogy mely kijelentés(ek) igaz(ak) a C++ nyelvre! ==
{{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.
# 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! ==
{{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ó: ==
<pre style="font-family:monospace;font-size: larger">
const char *p;
</pre>
=== Igaz, vagy hamis? ===
p pointerrel elérhető memóriaterület nem változtatható meg.
{{kvízkérdés|típus=egy|válasz=1}}
# Igaz
# Hamis
== Adott a következő kódrészlet: ==
<pre style="font-family:monospace;font-size: larger">
int a1 = 1; int b1 = 2;
int &tmp = a1;
a1 = b1;
b1= tmp;
</pre>
=== A kódrészlet lefutása után melyik állítás helyes? ===
{{kvízkérdés|típus=egy|válasz=4}}
# 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ó: ==
== Adott a következő deklaráció: ==
46. sor: 113. sor:
# A kódrészlet hibás pa változó nem kaphat értékül B objektumra mutató pointert.
# A kódrészlet hibás pa változó nem kaphat értékül B objektumra mutató pointert.


== Adott a következő deklaráció: ==
<pre style="font-family:monospace;font-size: larger">
struct A {
virtual void foo() {
std::cout << "A\n";
}
void bar() { foo(); }
};
struct B : public A {
void foo() {
std::cout << "B\n";
}
};
</pre>
=== Mit ír ki a következő kódrészlet? ===
<pre style="font-family:monospace;font-size: larger">
A* pa = new B;
pa->A::foo();
</pre>
{{kvízkérdés|típus=egy|válasz=1}}
# A
# A kódrészlet hibás pa változó nem kaphat értékül B objektumra mutató pointert.
# B




73. sor: 165. sor:
# A kódrészlet hibás, mert a B osztálynak nincs bar() tagfüggvénye.
# A kódrészlet hibás, mert a B osztálynak nincs bar() tagfüggvénye.
# B
# B
7777


== Adott a következő deklaráció: ==
== Adott a következő deklaráció: ==
92. 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 eredeti címe: „https://vik.wiki/Prog2_2._ZH_kikérdező