feat: implement CPP05 C++20 card
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
# Odpowiedzi — CPP05
|
||||
|
||||
Zamknąć stan i operacje w klasie oraz oddzielić interfejs publiczny od implementacji.
|
||||
|
||||
## Task01 — Klasa w dwóch plikach
|
||||
|
||||
Zdefiniuj interfejs licznika w nagłówku, a metody w osobnej jednostce translacji.
|
||||
|
||||
Oczekiwany stdout: `counter=3`.
|
||||
|
||||
Pliki dowodu: `src/task01/counter.cpp`, `src/task01/counter.hpp`, `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 — Stan prywatny
|
||||
|
||||
Udostępnij operacje rachunku bez publicznego zapisu pola balance.
|
||||
|
||||
Oczekiwany stdout: `accepted=1 rejected=1 balance=15`.
|
||||
|
||||
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 — Metody opisują zachowanie
|
||||
|
||||
Przenieś obliczenie pola i skalowanie do obiektu prostokąta.
|
||||
|
||||
Oczekiwany stdout: `area=24 scaled=96`.
|
||||
|
||||
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`.
|
||||
Reference in New Issue
Block a user