Open alexey-malov opened 8 years ago
[ ] Структуры должны использовать UpperCamelCase, например: CoordinatesType
[ ] pair плохо подходит для хранения координат, т.к. имена first и second вызывают слабые ассоциации с координатами
[ ] Завести для этих целей структуру Point, либо Vector, либо Coordinates
class ICanvas
{
public:
virtual void DrawLine(...) = 0;
virtual void FillPolygon(...) = 0;
// прочие методы рисования примитивов
};
class IShape
{
public:
virtual void Draw(ICanvas & canvas) = 0;
};
void DoSomething(const IShape& shape)
{
cout << shape.GetArea() << endl;
}
void Test()
{
CCircle c({10, 20}, 30, "#000000", "#ffffff");
DoSomething(c);
}
include stdafx.h в заголовочных файлах не размещают