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

Одиночное наследование - C++

Восстановить пароль Регистрация
 
vityaa
 Аватар для vityaa
5 / 5 / 0
Регистрация: 06.02.2011
Сообщений: 52
03.12.2013, 21:21     Одиночное наследование #1
Здравствуйте, помогите пожалуйста. Мне необходимо в main добавить повторный ввод значений (с помощью set-a) для того чтобы изменить данные которые я ввел ранее. (т.е. например я ввел сразу модель, тип, скорость, вместимость лифта, а потом программа меня спрашивает "не хотите ли вы изменить информацию о лифте" и при подтверждении я смог присвоить новые значения)

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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#include "stdafx.h"
#include "stdio.h"
#include <iostream>
#include <conio.h>
#include <string.h>
#include <ctime>
#include <iomanip>
#include <windows.h>
 
using namespace std;
 
    class Lift
    {
        char* Model;
        char* Type;
        int Vmestimost;
        int Speed;
    public:
 
        Lift();
        Lift(char*, char*, int, int); // konstryktor po ymolchaniyu
        ~Lift(); //destryktor
        Lift(const Lift&);
        void SetModel (char* newModel);
        void SetType (char* newType);
        void SetVmestimost (int newVmestimost);
        void SetSpeed (int newSpeed);
        void inf() {
            cout<< "Модель: "<<Model<<endl;
            cout<< "Тип лифта: "<<Type<<endl;
            cout<< "Вместимость лифта: "<<Vmestimost<<endl;
            cout<< "Скорость лифта: "<<Speed<<endl;
            cout<<endl;
        }
    };
 
    Lift::Lift() {
        char A[40];
        int B;
                
        Model=NULL;
        cout<<"Введите название модели лифта: "<<endl;
        cin>>A;
        SetModel(A);
        
        Type=NULL;
        cout<<"Введите название типа лифта: "<<endl;
        cin>>A;
        SetType(A);
 
        cout<<"Введите вместимость лифта: ";
        cin>>B;
        SetVmestimost(B);
 
        Speed=NULL;
        cout<<"Введите скорость лифта: ";
        cin>>B;
        SetSpeed(B);
        cout<<endl;
 
    }
 
    Lift::Lift(char* newModel, char* newType, int newVmestimost, int newSpeed)
    {
        SetModel (newModel);
        SetType (newType);
        SetVmestimost (newVmestimost);
        SetSpeed (newSpeed);
    }
 
    Lift::~Lift() 
    {
        if (Model) delete[] Model;
        if (Type) delete[] Type;
    }
 
    void Lift::SetModel (char* newModel) {
        //if (Model) delete Model;
        Model = new char[strlen(newModel)+1];
        strcpy(Model,newModel);
    }
    void Lift::SetType (char* newType) {
        //if (Type) delete Type;
        Type = new char[strlen(newType)+1];
        strcpy(Type,newType);
    }
    void Lift::SetVmestimost (int newVmestimost) {
        Vmestimost=newVmestimost;
    }
    void Lift::SetSpeed (int newSpeed) {
        Speed=newSpeed;
    }
    Lift::Lift(const Lift& C) {
        SetModel(C.Model);
        SetType(C.Type);
        SetVmestimost(C.Vmestimost);
        SetSpeed(C.Speed);
    }
    int _tmain(int argc, _TCHAR* argv[])
    {
        setlocale(LC_ALL,"Russian");
        cout<<" Работа конструктора без параметров"<<endl;
        Lift Lf1;
        Lf1.inf();
        cout<<" Работа конструктора с параметрами"<<endl;
        Lift Lf2("Siemens","Gryz",3,30);
        Lf2.inf();
        cout<<" Конструктор копии"<<endl;
        Lift Lf3(Lf1);
        Lf3.inf();
        system("pause");
        return 0;
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2013, 21:21     Одиночное наследование
Посмотрите здесь:

Одиночное наследование C++
C++ Наследование
Наследование C++
C++ Одиночное наследование
Одиночное наследование, иерархия классов "Шахматная фигура" C++
Наследование наследование ) C++
C++ Наследование

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

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

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