Объектно-ориентированное программирование. Сивохин А.В - 54 стр.

UptoLike

54
// Заголовочный файл textpoint.h, описание класса
#ifndef _TEXTPOINT_H_
#define _TEXTPOINT_H_
#include <object.h>
#include <clstypes.h>
class TextPoint:public Object //Наследование от Object
{
//Описание методов и свойств класса TextPoint см. в
// лабораторной работе 7
. . .
//Переопределяем виртуальные функциий класса Object
virtual classType isA() const
{ return __firstUserClass; };
virtual char _FAR *nameOf() const
{ return "TextPoint";};
virtual hashValueType hashValue() const
{ return (hashValueType)(color+visible+x+y);};
virtual int isEqual( const Object _FAR & T2) const
{return (((TextPoint &)T2).visible==visible &&
((TextPoint &)T2).color==color &&
((TextPoint &)T2).x==x && ((TextPoint &)T2).y==y );};
virtual void printOn( ostream _FAR & out ) const
{ out <<"Visible:" <<visible ;
out <<" Color:"<<color;
out <<" Location: ("<<x<<","<<y<<")";};
};
#endif
// Реализацию методов класса см. в лабораторной работе 7.
// Главный модуль, организация списка
#include <conio.h>
#include <dos.h>
#include <stdio.h>
#include <list.h>
#include "textpoint.h"
int TextPoint::how_many=0; //Определение
и инициализация
                                                               54
// Заголовочный файл textpoint.h, описание класса
#ifndef _TEXTPOINT_H_
#define _TEXTPOINT_H_
#include 
#include 
class TextPoint:public Object //Наследование от Object
{
 //Описание методов и свойств класса TextPoint см. в
 // лабораторной работе №7
    . . .

//Переопределяем виртуальные функциий класса Object
   virtual classType isA() const
  { return __firstUserClass; };

  virtual char _FAR *nameOf() const
 { return "TextPoint";};

  virtual hashValueType hashValue() const
 { return (hashValueType)(color+visible+x+y);};

  virtual int isEqual( const Object _FAR & T2) const
 {return (((TextPoint &)T2).visible==visible &&
       ((TextPoint &)T2).color==color &&
       ((TextPoint &)T2).x==x && ((TextPoint &)T2).y==y );};

  virtual void printOn( ostream _FAR & out ) const
  { out <<"Visible:" <
#include 
#include 
#include 
#include "textpoint.h"
int TextPoint::how_many=0; //Определение и инициализация