Zkouška 2008-02-11

seby at 2009-02-14 08:59:14

Otázky na C++ byly opravdu ve stylu otázek z OOP (tedy to, co je na s0cketce), ale některé tam byly taky ze zrušeného C++ a některé byly podle mě nové. Nově může být u otázky taky 0 správných odpovědí. Například u následující otázky tomu tak bylo:

Jakým příkazem by se měla odalokovat proměnná x deklarovaná takto:
T x = new T;
A) Proměnná neodalokovává
B) free(x)
C) delete T
D) delete[] x

Já jsem chybně věřil v to, že operátor delete[] je chytrý a bude vědět, co má dělat.
Jinak tam byl SStk, PES x SAVEC, destruktor abstraktní třídy atd.
Ještě si vzpomínám, že tam byla otázka, kterou jsem předtím neviděl: Nepamatuji si přesně zadání, ale vypadala přibližně takto:

Jakou hodnotu vrátí funkce g:
int a;
int f(int * x, int y) {
  *x = a + y;
  a = *x * y;
  *x = a * 2;
  return 0;
}
int g() {
  a = 3;
  return f(&a, a);
}

A pak tam byla ještě otázka na dědičnost, kde byly definované dvě třídy, každá měla asi 5 funkcí (některé virtuální, jiné ne a navzájem se některé volaly) a pak tam byly proměnné, do kterých se přiřazovaly instance těch tříd (samozřejmě s použitím dědičnosti). Následoval seznam volání různých funkcí a našim úklem bylo napsat, co vrátí.