Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторная работа 23 / CELTRNGL
.CPP//File CELTRNGL.cpp
//Naznachenie: Opredelenie funkcij klassa "elementy spiska"
//Author: Pavel Morozov
//Redakcija: 2.0 13.04.07
#ifndef CELTRNGL_cpp
#define CELTRNGL_cpp
#include<iostream.h>
#include<math.h>
#include<conio.h>
#include<stdio.h>
#include"cpoint.h"
#include"CELTRNGL.h"
#include"cpoint.cpp"
//--------------------Konstruktor--------------------------
CElement::CElement(CPoint *F0ptr):ID(HistNum+1)
{ float x0=0;float y0=0;
HistNum=HistNum+1;
Counter++;
F0ptr-> GetX(x0,y0);
cout<<endl<<"Konstruktor CElement sozdaet ekzempliar klassa s ID="<<GetID();
cout<<endl<<"HistNum= "<<GetHistNum()<<", Counter= "<<GetCounter()<<endl;
cprintf("Znachenie kotorogo ravno ");
cout<<"x= "<<x0<<", y= "<<y0<<endl;
Fptr=F0ptr;
Next=NULL;
F0ptr->GetID();
}
CElement::CElement( CElement &E, CElement *Next0 )
//Konstruktor kopirovanija
{
float x0;float y0;
Next=Next0;
cout<<endl;
Fptr=new CPoint(*(E.Fptr));
E.GetFptr()-> GetX(x0,y0);
cprintf("Konstruktor kopirovanija СElement sozdal");
cout<<endl;
cprintf(" kopiju elementa, znachenie kotorogo ravno ");
cout<<"x= "<<x0<<"y= "<<y0<<endl<<endl;
}
//--------------Funkcii interfeisa-----------------------
void CElement::SetFptr( CPoint *F0ptr )
//Ustanovit ukazatel na element
{ Fptr=F0ptr;}
void CElement::SetNext( CElement *E)
//Ustanovit ukazatel na sledujushij element
{ Next=E; }
CPoint *CElement::GetFptr()
{ return Fptr; }
//Poluchit ukazatel na element
CElement *CElement::GetNext()
//Poluchit ukazatel na sledujushij element
{ return Next;}
unsigned int CElement::GetID()
//Poluchit ukazatel na predydushij element
{ return ID;}
unsigned int CElement::GetHistNum()
// Poluchit kolichestvo sozdannyh objektov
{ return HistNum;}
unsigned int CElement::GetCounter()
// Poluchit kolichestvo sushestvujushih objektov
{return Counter;}
//-------------------------Destruktor-------------
CElement::~CElement()
{ float x0,y0;
cout<<endl;
cprintf("~CElement razrushaet element klassa s ID...");
Counter--;
cout<<GetID();
cout<<endl;
if (Fptr)
{
Fptr-> GetX(x0,y0);
cout<<endl;
cprintf("Zanchenie elementa ");
cout<<"x= "<<x0<<", y= "<<y0<<endl;
delete Fptr;
cout<<endl;
cprintf("Element unichtozen...");
cout<<endl;
cprintf("Nazmite probel...");
cout<<endl;
getch();
}
}
#endif
Соседние файлы в папке Лабораторная работа 23