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

массвив объектов класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сравнение чисел http://www.cyberforum.ru/cpp-beginners/thread526505.html
Скажите, пожалуйста, логику сравнения трёх чисел на языке алгоритма, чтобы рез-т был таким: первое > второе > третье
C++ Дано натуральное число, посчитать последовательность и т.д. Вобщем нужна помощь, не знаю как решить задачки, точнее подзабыл, если кто поможет хоть 1, буду признателен. 1-Дано натуральное число n (n<10000). Определить, является ли это число палиндромом (перевертышем) с учетом четырех цифр, как, например, числа 2222, 6116, 0440 и т.д. 2-Пользователь вводит последовательность целых чисел. Конец ввода – ввод числа 0 (не считается числом введенной... http://www.cyberforum.ru/cpp-beginners/thread526489.html
Арифметические действия в командной строке C++
Осуществить заданные в командной строке арифметические действия (сложение и вычитание) над целыми числами и вывести в простейшее диалоговое окно (MessageBox) получившийся результат, либо сообщение об ошибке. Например, 2+3-15 приведет к выводу на экран значения -10. Для вас то не должно быть это сложно.Спасибо заранее
Не работает один из классов C++
Задание. Цикл с параметром - FOR: Для геометрической прогрессии 2, 6, 18, 54, 162 ... определить первые n членов этой прогрессии. При этом, N ввести с клавиатуры, а результат вывести на экран и записать в файл. выполнить в виде класса LR2 с 3-мя функциями – членами класса. По требованию препода, только на Turbo C. класс CL2 работает, вводится данные. А данные из класса CL2::vvod нужно...
C++ Отправка более, чем одного POST запроса http://www.cyberforum.ru/cpp-beginners/thread526467.html
Помогите написать код, отправки Post запросов многопоточно, С возможностью выбора количества потоков(мин=1 макс=9999) $sdomain = "109.ХХХ.ХХХ.ХХ" $iport = 80 $sparameters = "SetContactForm%5BbruteforceDetected%5D=&SetContactForm%5BcontactType%5D=2&SetContactForm%5Bcontact%5D=из инпут...
C++ Работа с файлами (массив приведение типов) Visual studio Будте добры, помогите разобраться с задачей: в текстовом файле хранится целочисленная матрица. Преобразовать ее в вещественную и вывести на экран и в другой файл с точностью до второго знака после точки. подробнее

Показать сообщение отдельно
Notty
0 / 0 / 0
Регистрация: 11.10.2011
Сообщений: 30
23.03.2012, 20:00     массвив объектов класса
Доброго времени суток.

file.h
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
class oblast {
protected:
    char obl_name[20];
    char country[20];
public:
    oblast(void);
    oblast(char*,char*);
    oblast(oblast &);
    ~oblast(void);
    void obl_set(char*,char*);
    void obl_show(void);
};
 
class misce: public oblast {
protected:
    int koord_shurota;
    int koord_dovgota;
public:
    misce(void);
    misce(int,int);
    misce(misce &);
    ~misce(void);
    void getkoord(void);
    void setkoord(int,int);
};
 
 
class misto: public oblast{
protected:
    char city_name[20];
    long naselennia;
public:
    misto(void);
    misto(char*,long);
    misto(misto &);
    ~misto(void);
    void city_show(void);
    void city_set(char*,long);
};
 
class megapolis: public misto{
protected:
    char data_zasn[20];
public:
    megapolis(void);
    megapolis(char*);
    megapolis(megapolis &);
    void setdata(char*);
    void getdata(void);
    void show_all(void);
    void to_file(char*);
    void from_file(char*);
    ~megapolis(void);
};
file.cpp
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
#include <iostream>
#include <fstream>
#include <cstring>
#include "oblast.h"
 
 
using namespace std;
 
oblast::oblast(void)
{
    strcpy_s(obl_name," ");
    strcpy_s(country," ");
}
oblast::oblast(char *oname, char *countr)
{
    strcpy_s(obl_name,oname);
    strcpy_s(country,countr);
}
oblast::oblast(oblast &obj)
{
    strcpy_s(obl_name,obj.obl_name);
    strcpy_s(country,obj.country);
}
oblast::~oblast(void)
{
    cout<<"Деструктор: "<<obl_name<<endl;
}
void oblast::obl_show(void)
{
    cout<<"Назва областi: "<<obl_name<<endl;
    cout<<"Країна: "<<country<<endl;
}
void oblast::obl_set(char *oname, char *countr)
{
    strcpy_s(obl_name,oname);
    strcpy_s(country,countr);
}
 
misce::misce(void)
{
    koord_shurota=0;
    koord_dovgota=0;
}
misce::misce(int shurota,int dovgota)
{
    koord_shurota=shurota;
    koord_dovgota=dovgota;
}
misce::misce(misce &obj)
{
    strcpy_s(obl_name,obj.obl_name);
    strcpy_s(country,obj.country);
    koord_shurota=obj.koord_shurota;
    koord_dovgota=obj.koord_dovgota;
}
misce::~misce(void)
{
    cout << "Деструктор: Мiсце" << endl;
}
void misce::getkoord(void)
{
    cout<<"Координати широти= "<<koord_shurota<<"°"<<endl;
    cout<<"Координати довготи= "<<koord_dovgota<<"°"<<endl;
}
void misce::setkoord(int shurota,int dovgota)
{
    koord_shurota=shurota;
    koord_dovgota=dovgota;
}
 
misto::misto(void)
{
    strcpy_s(city_name," ");
    naselennia=0;
}
misto::misto(char *n,long k)
{
    strcpy_s(city_name,n);
    naselennia=k;
}
misto::misto(misto &obj)
{
    strcpy_s(obl_name,obj.obl_name);
    strcpy_s(country,obj.country);
    strcpy_s(city_name,obj.city_name);
    naselennia=obj.naselennia;
}
misto::~misto(void)
{
    cout<<"Деструктор: "<<city_name<<endl;
}
void misto::city_set(char *name,long kilk)
{
    strcpy_s(city_name,name);
    naselennia=kilk;
}
void misto::city_show(void)
{
    cout<<"Назва мiста: "<<city_name<<endl;
    cout<<"Кiлькiсть жителiв: "<<naselennia<<endl;
}
 
megapolis::megapolis(void)
{
    strcpy_s(data_zasn," ");
}
megapolis::megapolis(char *data)
{
    strcpy_s(data_zasn,data);
}
megapolis::megapolis(megapolis &obj)
{
    strcpy_s(obl_name,obj.obl_name);
    strcpy_s(country,obj.country);
    strcpy_s(city_name,obj.city_name);
    naselennia=obj.naselennia;
    strcpy_s(data_zasn,obj.data_zasn);
}
megapolis::~megapolis(void)
{
    cout<<"Деструктор: Мегаполiс"<<endl;
}
void megapolis::setdata(char *data)
{
    strcpy_s(data_zasn,data);
}
void megapolis::getdata(void)
{
    cout<<"Дата заснування: "<<data_zasn<<endl;
}
 
void megapolis::show_all(void)
{
    cout<<"Країна: "<<country<<endl;
    cout<<"Назва областi: "<<obl_name<<endl;
    cout<<"Назва мiста: "<<city_name<<endl;
    cout<<"Кiлькiсть жителiв: "<<naselennia<<endl;
    cout<<"Дата заснування: "<<data_zasn<<endl;
};
 
 
void megapolis::to_file(char *fname)
{
    ofstream file(fname);
    if(!file)
    {
        cout << "Error!" << endl;
    }
    else
    {
        file<<country<<endl;
        file<<obl_name<<endl;
        file<<city_name<<endl;
        file<<naselennia<<endl;
        file<<data_zasn<<endl;
        file.close();
    }
}
void megapolis::from_file(char *fname)
{
    ifstream file(fname);
    if(!file)
    {
        cout << "Error!" << endl;
    }
    else
    {
        file.getline(country,20);
        file.getline(obl_name,20);
        file.get();
        file.getline(city_name,20);
        file>>naselennia;
        file.get();
        file.getline(data_zasn,20);
        file.close();
    }
}
programm.cpp
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
#include <iostream>
#include <cstring>
#include "oblast.h"
 
using namespace std;
 
void main()
 
{   setlocale(LC_ALL,"Ukrainian");
    
    
    misce obj2;
    obj2.setkoord(50,30);
    obj2.getkoord();
    megapolis obj;
    obj.obl_set("Київська","Україна");
 
    obj.city_set("Київ",2814258);
    obj.setdata("482 рiк");
    obj.show_all();
    obj.to_file("1.txt");
    obj.from_file("1.txt");
 
    cin.get();
}

вот .... есть некое наследование классов, мне нужно сделать массив объектов этого класса в основной программе. например есть объект misce obj2; и megapolis obj; как вместо объявления этих объектов сделать из них массив? искал, так только находил маленикие классы с конструктором, параметры которого передать в этом массиве объктов не составляет труда. А как сделать этот массив, если у классов много методов и конструкторов с параметрами и без...)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru