Řešení | |
Konstruktor nemůže mít návratový typ. |
Řešení | |
10 1000000 -0.0009 |
Řešení | |
Přiřazovací příkaz x = y je chybný, protože cl1 a cl2 jsou dva různé typy tříd a objekty různých typů tříd nemohou být přiřazeny. |
Řešení | |
Paměť použitá pro uložení integer a odkazovaná přes p v objektu o, který je použit pro volání neg() je uvolněna při zrušení kopie o, když končí neg(), bez ohledu na to, zda ji ještě o potřebuje v main(). |
Řešení | |
Ano |
Řešení | |
Spřátelené funkce nejsou členské funkce, ale mají zajištěný přístup k privátním členům třídy s níž jsou spřáteleny. |
Řešení | |
char *p; p = new char [100]; // ... strcpy(p, "Test"); |
Řešení | |
Když je voláno tripple(), získává se explicitně adresa d operátorem &, což není povolené. Když je použit argument odkazu, není před argument vloženo &. |
Řešení | |
Ukazatel this je ukazatel, který je automaticky předáván členské funkci a který ukazuje na objekt, který generoval volání. |
Řešení | |
Odkaz je v podstatě implicitní konstantní ukazatel, který má odlišné jméno než jiná proměnná nebo argument. Výhodou použití odkazu je, že nevzniká kopie argumentu. |
Řešení | |
Například proto, abychom mohli v konstruktoru v závislosti na konkrétním volání provést danou inicializaci, nebo také proto, aby se v programu mohly objevit jak samostatné objekty tak i pole objektů. |
Řešení | |
Třída samp definuje pouze jediný konstruktor a tento konstruktor požaduje hodnotu pro inicializaci. Je nesprávné deklarovat objekt typu samp bez něj. |
Řešení | |
Standardní argument je hodnota, která se přidělí argumentu funkce, když se při volání funkce neobjeví požadovaný počet argumentů. |
Řešení | |
Všechny programy, které přebírají standardní argumenty se musí objevit napravo od toho, který nepřebírá. Jakmile totiž začneme předávat standardní argumenty, všechny následující argumenty musí být také standardní. q zde není standardní. |
Řešení | |
Standardní argument nemůže být další argument nebo lokální proměnná. |
Řešení | |
Platné příkazy jsou tyto:
o1getab(i, j); o1.c = 10; |
Řešení | |
Constructing A Constructing B Constructing C Destructing C Destructing B Destructing A |
Řešení | |
Abstraktní třída obsahuje alespoň jednu čistě virtuální funkci. To znamená, že vzhledem k této třídě nemá funkce žádné tělo. Neexistuje žádný způsob, jak by mohl být vytvořen objekt, poněvadž definice třídy není úplná. |
Řešení | |
Fragment není správný, protože definice virtuální funkce musí mít stejný návratový typ a počet argumentů jako původní funkce. V tomto případě se liší počet argumentů. |
Řešení | |
Ano |
Řešení | |
Throw je voláno ještě před průchodem bloku try. |
Řešení | |
Znaková vyjímka je odmítnuta, ale příkaz catch obslouží pouze znakový ukazatel - neexistuje odpovídající příkaz catch, který by obsloužil znakovou vyjímku. |
Řešení | |
Pro throw neexistuje odpovídající catch. |
Řešení | |
Je nutné vytvořit catch zachytávající int - catch(int) a nebo je možné zachytávat všechny vyjímky - catch(...) |