feat: implement CPP05 C++20 card

This commit is contained in:
user
2026-07-21 20:11:42 +02:00
commit e332572a3e
38 changed files with 7623 additions and 0 deletions
+33
View File
@@ -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`.