#pragma once #include #include #include CreateFigure(std::istringstream &is) { using std::make_shared; std::string figure_t; int64_t a, b, c; is >> figure_t; if (figure_t == "RECT") { is >> a >> b; return make_shared(a, b); } if (figure_t == "TRIANGLE") { is >> a >> b >> c; return make_shared(a, b, c); } if (figure_t == "CIRCLE") { is >> a; return make_shared(a); } }