INF.04 · pytanie 827
Dlaczego w języku C++ pole klasy zadeklarowane jako stała musi otrzymać wartość na liście inicjującej konstruktora?
- ABo pole stałe leży w pamięci statycznej, niedostępnej z ciała konstruktora klasy
- BBo lista inicjująca wykonuje się dopiero po zakończeniu ciała konstruktora klasy
- CBo konstruktor nie ma prawa zmieniać żadnych pól prywatnych zadeklarowanych w klasie
- DBo w ciele konstruktora pole jest już zainicjowane i nie da się do niego przypisaćPoprawna
Wyjaśnienie
Lista inicjująca jest jedynym momentem, w którym składowa dostaje wartość początkową, a nie kolejne przypisanie.