Скачиваний:
12
Добавлен:
01.05.2014
Размер:
2.42 Кб
Скачать
//File CElPoly.cpp
//Naznachenie: Proekt klassa "Nabor mnogougolnikov"
//Author: Pavel Morozov
//Redakcija: 2.0 13.04.07



#ifndef CElPoly_cpp
#define CElPoly_cpp

#include<iostream.h>
#include<math.h>
#include<conio.h>
#include<stdio.h>
#include"cpolygon.cpp"
#include"cpolygon.h"
#include"celpoly.h"
//--------------------Konstruktor--------------------------
CElPoly::CElPoly(CPolygon *F0ptrPoly):ID(HistNum+1)
	  {  float x0=0;float y0=0;

	     HistNum=HistNum+1;
	     Counter++;
	  
	     cout<<endl<<"Konstruktor CElPoly sozdaet ekzempliar klassa s ID="<<GetID();
	     cout<<endl<<"HistNum= "<<GetHistNum()<<", Counter= "<<GetCounter()<<endl;

	     FptrPoly=F0ptrPoly;
	     Next=NULL;



	    }

CElPoly::CElPoly( CElPoly &EPoly, CElPoly *Next0 )
//Konstruktor kopirovanija
	{
	  float x0;float y0;
	  Next=Next0;
	  cout<<endl;
	  FptrPoly=new CPolygon(*(EPoly.FptrPoly));
 
	  cprintf("Konstruktor kopirovanija СElPoly sozdal kopiju elementa");
	  cout<<endl;
	  
	
	}


//--------------Funkcii interfeisa-----------------------
void CElPoly::SetFptrPoly( CPolygon *F0ptrPoly )
//Ustanovit ukazatel na element
	  { FptrPoly=F0ptrPoly;}

void CElPoly::SetNextPoly( CElPoly *EPoly)
//Ustanovit ukazatel na sledujushij element
	  { Next=EPoly; }

CPolygon *CElPoly::GetFptrPoly()
	  { return FptrPoly; }
//Poluchit ukazatel na element

CElPoly *CElPoly::GetNextPoly()
//Poluchit ukazatel na sledujushij element
	  { return Next;}

unsigned int CElPoly::GetID()
//Poluchit ukazatel na predydushij element
		    { return ID;}

unsigned int CElPoly::GetHistNum()
// Poluchit kolichestvo sozdannyh objektov
{ return HistNum;}


unsigned int CElPoly::GetCounter()
// Poluchit kolichestvo sushestvujushih objektov
{return Counter;}


//-------------------------Destruktor-------------
CElPoly::~CElPoly()
	 { float x0,y0;
	   cout<<endl;
	   cprintf("~CElPoly razrushaet element klassa s ID...");
           Counter--;
           cout<<GetID();
	   cout<<endl;
	   if (FptrPoly)
	   {
	    // Polyptr-> GetX(x0,y0);
	     cout<<endl;
	     cprintf("Zanchenie elementa  ");
	   //  cout<<"x= "<<x0<<", y= "<<y0<<endl;
	     delete FptrPoly;
	     cout<<endl;
	     cprintf("Element unichtozen...");
	     cout<<endl;
	     cprintf("Nazmite probel...");
	     cout<<endl;
	     getch();

	   }


	 } 


#endif
Соседние файлы в папке Лабораторная работа 23