📄 shapevisitor.hpp
字号:
// ShapeVisitor.hpp
//
// Base class for all shape visitors
//
// (C) Datasim Education BV 1998
#ifndef ShapeVisitor_hpp
#define ShapeVisitor_hpp
#include "Point.hpp"
#include "Line.hpp"
#include "Circle.hpp"
#include "ShapeComposite.hpp"
#include "NameDecorator.hpp"
class ShapeVisitor
{
private:
public:
// Constructors and Destructor
ShapeVisitor(); // Default constructor
ShapeVisitor(const ShapeVisitor& source); // Copy constructor
virtual ~ShapeVisitor(); // Destructor
// The visit functions
virtual void Visit(Point& p)=0; // Visit point
virtual void Visit(Line& l)=0; // Visit line
virtual void Visit(Circle& c)=0; // Visit circle
virtual void Visit(ShapeComposite& sc); // Visit shape composite
virtual void Visit(NameDecorator& nd); // Visit name decorator
// Operators
ShapeVisitor& operator = (const ShapeVisitor& source); // Assignment
};
#endif // ShapeVisitor_hpp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -