Скачиваний:
12
Добавлен:
01.05.2014
Размер:
927 б
Скачать
#if !defined(TRIANGLE_H)
#define TRIANGLE_H

#include "Line.h"
#include "Shape.h"

class Triangle: public Line, virtual public Hashable {
	private:
	    static unsigned long int count;

	    static unsigned long int total;

		const unsigned long int id;

		Point* point;

	public:
		Triangle();

		Triangle(Point* p1, Point* p2, Point* p3);

		Triangle(const Triangle* o);

		Triangle(const Triangle& o);

		virtual ~Triangle();

		Point* getPoint(int n);

		ostream& print(ostream& os) const;

		string toString() const;

		Triangle& operator= (const Triangle& o);

		int operator==(const Triangle& o) const;

		void moveBy(const double x, const double y);

		unsigned long int getObjectId() const{
			return id;
		}

		static unsigned long int getNumberOfObjects(){ //const
			return count;
		}

		int hashCode() const{
			return buildHashCode(toString());
		}
};

#endif 
Соседние файлы в папке lab2_2