34 lines
1.1 KiB
Markdown
34 lines
1.1 KiB
Markdown
# Odpowiedzi — CPP08
|
|
|
|
Powiązać miejsce przechowywania obiektu z początkiem i końcem jego czasu życia.
|
|
|
|
## Task01 — Automatyczny i statyczny
|
|
|
|
Porównaj nowy obiekt automatyczny z zachowującym stan obiektem statycznym.
|
|
|
|
Oczekiwany stdout: `auto=7 static_calls=1,2`.
|
|
|
|
Pliki dowodu: `src/task01/main.cpp`.
|
|
|
|
Wynik nie jest oceniany wzrokowo: test kompiluje kod bez ostrzeżeń, uruchamia go i wykonuje dokładne `diff` z plikiem `tests/expected`.
|
|
|
|
## Task02 — Obiekt dynamiczny
|
|
|
|
Jawnie zestaw new z delete i obserwuj moment wykonania destruktora.
|
|
|
|
Oczekiwany stdout: `construct / value=11 / destroy`.
|
|
|
|
Pliki dowodu: `src/task02/main.cpp`.
|
|
|
|
Wynik nie jest oceniany wzrokowo: test kompiluje kod bez ostrzeżeń, uruchamia go i wykonuje dokładne `diff` z plikiem `tests/expected`.
|
|
|
|
## Task03 — Zakres i przesłanianie
|
|
|
|
Pokaż, że nazwa wewnętrzna nie zmienia obiektu o tej samej nazwie w zakresie zewnętrznym.
|
|
|
|
Oczekiwany stdout: `outer=7 / inner=9 / outer=7`.
|
|
|
|
Pliki dowodu: `src/task03/main.cpp`.
|
|
|
|
Wynik nie jest oceniany wzrokowo: test kompiluje kod bez ostrzeżeń, uruchamia go i wykonuje dokładne `diff` z plikiem `tests/expected`.
|