Форум программистов, компьютерный форум CyberForum.ru

ООП. Конструктор - деструктор - C++

Восстановить пароль Регистрация
 
Shkiperrr
0 / 0 / 0
Регистрация: 21.04.2012
Сообщений: 3
24.05.2012, 00:18     ООП. Конструктор - деструктор #1
Даны объекты предметной области:
1.Работающая технологическая установка (объект). Определенные технологические параметры установки изменяются по времени по известному закону (в зависимости от «модельного» времени).
2.Датчики, получающие информацию о технологических параметрах установки.
3.Контроллер, опрашивающий датчики и управляющий работой установки.

Вот программка:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#include <iostream.h>
#include <math.h>
#include <string.h>
#define LINE cout<<"---------------------------\n";
 
using namespace std;
float c_time=1,popr_conc=0;
int mode,i;
 
class ustanovka {
    
public:
float conc, bar;
int rejim()
{ if (mode==2)popr_conc-=pow(c_time,2.5); else popr_conc+=3*c_time;
if(mode==0) popr_conc=0;
return 0;}
int izmenenie(float c_time){
conc=3.2*pow(c_time,2.0)+0.3*c_time+popr_conc;
bar=0.02*c_time+0.003*conc;
return 0;}
 
float getconc(){return conc;}
float getbar(){return bar;}
};
 
ustanovka install;
 
class datchik_conc{
public:
int nomer;
string datch_name;  
float parametr(){return install.getconc();}
string datch_namef(int nomer){return datch_name;}
};
 
class datchik_bar{
public:
int nomer;
string datch_name;  
float parametr(){return install.getbar();}
string datch_namef(int nomer){
return datch_name;}
};
 
datchik_conc concent;
datchik_bar davl;
 
class controller{
public:
float conc_min,conc_max;    
string object_name;
float davlenie(){return davl.parametr();}
float concentr(){return concent.parametr();}
 
int rejim(){
if ((concentr()<=conc_min)&&((mode==2)||(mode==0))){LINE;cout<<"perekluchenie!\n"; LINE; mode=1;popr_conc=0;}
if ((concentr()>=conc_max)&&(mode<2)){LINE;cout<<"perekluchenie!\n"; LINE; mode=2;popr_conc=0;}
if (((concentr()>=conc_min)&&(concentr()<=conc_max))&&(mode>0)){LINE;cout<<"perekluchenie!\n"; LINE; mode=0;popr_conc=0;}
return 0;}
int iteraciya(){
rejim(); install.rejim(); 
cout<<concent.datch_name<<":  concentraciya="<<concentr()<<"\t"<<davl.datch_name;
cout<<":   davlenie ravno="<<davlenie()<<"\tmode="<<mode<<endl;
install.izmenenie(c_time);c_time+=1;
return 0;}
};  
            
int main(){
char vibor;
concent.datch_name="concent"; davl.datch_name="davl";
concent.nomer=1; davl.nomer=1;
controller one;
install.conc=0; install.bar=0;
one.conc_min=15; one.conc_max=111; 
cout<<"Nachalo raboti"<<endl;
one.iteraciya();
i=1;
do{
cout<<"prodoljit? 1-da,2-net"<<endl;
cin>>vibor;
if (vibor=='1'){one.iteraciya();i++;} else {i=11;}}while(i<=10);
 
LINE; LINE;
cout<<"\nRabota programmi zavershena. ";
return 0;}
Все работает, но нужно переделать так, чтобы использовались Конструктор-Деструктор. Как это сделать? и можно ли вообще так сделать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2012, 00:18     ООП. Конструктор - деструктор
Посмотрите здесь:

C++ конструктор и деструктор
конструктор и деструктор в C++ C++
C++ конструктор и деструктор
Конструктор/деструктор C++
C++ Конструктор и деструктор
C++ Конструктор и деструктор
C++ ООП. Не работает задача (конструктор, деструктор)
Конструктор, деструктор C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 11:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru