Практика на файлы в C++
Задачи просят вынести класс в заголовок внутри
пространства имен и подключить его из другого
файла с main.
Создайте shop/Item.hpp с пространством
имен shop и классом Item
с полем title. В main.cpp
создайте shop::Item("pen")
и выведите title.
Сделайте пространство core с классом
Engine и полем rpm в заголовке.
Сделайте пространство app с классом
Runner в другом заголовке, который
в start выводит rpm
для core::Engine(3000).
Объявите в пространствах ui::v1
и ui::v2 класс Theme
с методом name, возвращающим
"light" и "dark".
В client подключите оба типа
и выведите оба имени.
Сделайте пространство util с функцией
twice(x) и классом Box
с полем value в одном заголовке.
В main выведите util::twice(4)
и util::Box(4).value.
Создайте model/graph.hpp
с пространством model и классами
Node и Graph в одном файле.
Пусть Graph хранит
std::vector<Node>. В main.cpp
выведите число узлов графа из двух Node.
Сделайте пространство api с абстрактным
классом Service и методом ping
в заголовке. Сделайте пространство impl
с классом EchoService, возвращающим
"pong", в .cpp.
В main выведите ping
через указатель api::Service*.
Сделайте пространство text с функцией
trimLower(s) в text.hpp
и функцией tag(s) в format.hpp -
склейка "[", строка, "]".
Добавьте label(s), которая выводит
tag(trimLower(s)) для " Hi ".