Melyik értékadás szabályos az alábbi kód után?
int i = 10;
const int j = 15;
const int *p = &j;
- p = *j; - j-t dereferálná
- *p = i; - p által mutatott hely értékét módosítaná
- p *= i; - szorzás
- p = &i;
Mi a következő utasítás visszatérési értékének típusa?
new int(3);
- int*
- void* - new mindig void*
- int
- int[3]
Mi az alábbi függvényhívás kimenete?
void f(int c)
{
std::cout << c;
}
int a = 3;
int b = 4;
f((++b,a++));
- fordítási hiba
- 5
- 3 - kiértékeli az elsőt, visszatér a másodikkal (postfix utána növeli)
- 4
Melyek helyes template osztálydefiníciók az alábbiak közül?
- template<class T> class A{};
- template<bool F> class B{};
- template<float G> class P{};
- template<int G> class H{};
- template<struct G> class O{};
- template<Cica C> class G{};
- template<Cica* C> class J{}; - külső szerkesztésű objektumokra pointer
- template<typename T> class Y{};
Mi az alábbi függvényhívás kimenete?
int f(int c)
{
std::cout << c;
return c;
}
f( (f(3), f(4)) );
- fordítási hiba
- 344
- 434
- 343
Mit ad meg két pointer különbsége?
- Folytonos tárterületen a két elem közti távolságot.
- A két elem közti távolságot bájtokban mérve.
Az alábbi függvény deklarációk alapján melyik tagfüggvény hívható meg const Foo objektumon?
struct Foo
{
virtual void a(const int i);
const int& b(const int i);
void c() const;
const Foo& d(const Foo& f);
};
- foo.b(12);
- foo.c()
- foo.d(foo);
- foo.a(3);
Az 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) {}
};
- 0
- nemdefiniált
- 10
- 15
Mennyi a 0x11 konstans értéke?
- 11
- 9
- 17
- 3
Mennyi a 011 konstans értéke?
- 11
- 9
- 17
- 3
Mi a típusa a 5e2f literálnak?
- int
- ez nem szabályos konstans
- float
- double
Mi a típusa a 0xff konstansnak?
- char*
- double
- int
- float
Mi a problemája a preprocesszor használatának?
- A preprocesszor implementació-specifikus.
- Független a C++ nyelvtől, ezért nincs tekintettel a nyelvi szabályokra.
- A Java programozási nyelv nem támogatja, ezért nem tudjuk együtt használni C++-t a Java-val.
- Jelentősen növeli a futási időt.
Mi a csilagozott sorban meghívott művelet neve?
class Foo
{
...
};
Foo f;
Foo g = f; // (*)
- copy konstruktor
- default konstruktor
- értékadó operátor
- destruktor
Az alábbiak közül melyiket kötelező inicializálni az inicializáló listában?
- az STL-es konténereket
- a referenciákat
- a pointereket
- az összes adattagot
Mi lesz az a változó értéke a függvényhívás után?
int a = 1, b = 2;
void f(int* x, int* y)
{
int t = *x;
*x = *y;
*y = t;
}
f(&a, &b);
- semmi, fordítási hiba keletkezik
- nem definiált
- 1
- 2
Mitől válik egy osztály absztrakttá?
- A tagfüggvényeinek csak a deklarációja ismert.
- Van tisztán virtuális tagfüggvénye.
- Van bázisosztálya.
- Van virtuális destruktora.
Az alábbiak közül melyik függvényhívással lehet ekvivalens az alábbi (csillaggal jelölt) operátorhívás?
class Matrix
{
// ...
};
Matrix a,b;
a + b; // (*)
- b.operator+(a);
- a.operator+(a,b);
- operator+(a,b);
- Matrix.operator+(a,b);
Melyik nem preprocesszor direktíva?
- #else
- #elif
- #undef
- #while
Melyik definíció az alábbiak közül
- class MyClass;
- int a[10];
- extern int i;
- struct MyStruct;
Melyik igaz az alábbiak közül?
- Az automatikus változók a stack-en jönnek létre.
- Az automatikus változók a statikus tárterületen jönnek létre.
- Az automatikus változók a winchester-en jönnek létre.
- Az automatikus változók a heap-en jönnek létre.
Adott az alábbi X típus és f függvény. Az f(x) függvény hívásakor az X típus melyik műveletét hajtjuk végre a paraméter átadásához?
class X
{
// ...
};
void f(X a)
{
// ...
}
X x;
- Az X típus default konstruktorát.
- Az X típus értékadó operátorát.
- Nem hajtunk végre műveletet, mert x hivatkozás szerint adódik át.
- Az X típus copy konstruktorát.
Az alábbi kódban a csillagozott helyen mi this-nek a típusa?
struct Foo
{
void f()
{
// (*)
}
};
- const Foo*
- Foo*
- Foo&
- void*
Az X::f() függvényhívás során mit ír ki a program?
int i = 1;
namespace X
{
int i = 2;
void f()
{
int a = i + 1;
int i = ::i - 1;
std::cout << a << ", " << i << std::endl;
}
}
- 3, 0
- 2, 1
- semmit, fordítási hiba keletkezik
- 3, 2
Melyik igaz az alábbiak közül?
struct X
{
X(int i = 0) {}
};
- A fenti struct-nak nincs default konstruktora.
- A fenti struct-nak csak default konstruktora van.
- A fenti struct-nak van default konstruktora.
- A fenti struct-nak nincs copy konstruktora.
Melyik azonosító szabályos a C++ szabályai szerint?
- 101_kiskutya
- _1
- miez?
- jo!
Mit nevezünk funktornak?
- Azokat az alprogramokat, amelyeknek nem void a visszatérési érték típusa.
- Implementáció függő.
- Azokat az objektumokat, amelyek van operator()-a.
- Azokat az alprogramokat, amelyeknek void a visszatérési érték típusa.
Melyik reláció hamis az alábbiak közül?
- sizeof(double) < sizeof(long double)
- sizeof(unsigned char) == sizeof(char)
- sizeof(short) <= sizeof(int)
- sizeof(float) <= sizeof(double)
Melyik állítás igaz az alábbiak közül?
- Absztrakt osztálynak nem lehet konstruktora.
- Absztrakt osztálynak nem lehet adattagja.
- Absztrakt osztálynak nem lehet objektumot létrehozni.
- Absztrakt osztálynak nem lehet származtatni.
Mikor nevezünk erősen típusosnak egy nyelvet?
- Erősen típusos, ha a forditóprogram ellenőrzi, hogy definiált-e egy objektum vagy alprogram.
- Erősen típusos, ha a futási időben nem keletkezik kivétel.
- Erősen típusos, ha minden kifejezés és részkifejezés típusa fordítási időben meghatározott.
- Erősen típusos, ha minden kifejezés és részkifejezés típusa futási időben meghatározott.
Melyik igaz az alábbiak közül?
- A friend kulcsszóval meghatározhatjuk a közelebbi osztályt többszörös öröklődés esetében.
- A friend kulcsszó több osztály logikai csoportosítására szolgál.
- Egy friend template osztály esetén példányosításkor nem kötelező explicit megadni a template paramétereket.
- Egy friend függvény hozzáférhet az osztály private tagjaihoz.
Melyik állítás igaz az alábbiak közül?
- A postfix operator++ mindig a megnövelt értéket adja vissza.
- A postfix operator++ mindig hatékonyabb, mint a prefix.
- Deklarációban egy plusz paraméterrel tudjuk megkülönböztetni a postfix operator++-t a prefix-től. - postfixnek van egy fölösleges int paramétere
- Az alaptípusok prefix operator++-nak void a visszatérési érték típusa.
Lehet-e egy C++ függvényben két azonos nevű változó?
- Nem lehet.
- Csak akkor, ha különböző blokkban definiálták.
- Csak akkor, ha különböző a típusuk.
- Csak akkor, ha a láthatóságuk nem esik egybe.
Projektünkben az összes fordítási egység lefordult, de nem jön létre a futtható állomány a build folyamat végén. Mi lehet a baj?
- A build folyamat közben nem találtuk meg a preprocessor-t.
- A linker nem talált meg egy dinamikus linkelésű library-t.
- A linker nem talált meg egy statikus linkelésű library-t.
- A virtuális destruktorok hiánya okozta.