Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228

Динамический массив обьектов в класе

12.05.2013, 14:33. Показов 703. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Надо сделать так чтоб в класе был дин.массив обьектов другого класа. создаю я массив через конструктор с параметром(размерность). С созданием класса проблем нету, а вот обьект создаваться не хочет. в чем проблема? что я не так делаю?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class prokat
{
    char corp_name[15];
    prokat(int size)
    {
        tz *arr = new tz[size];
    }
};
 
void main()
{
    int size;
    cin >> size;
    prokat obj(size);
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.05.2013, 14:33
Ответы с готовыми решениями:

Динамический массив в класе
Надо реализовать дин.массив в класе. Насколько знаю надо сделать через конструктор етот массив. Описал массив и фцию для заполнения его...

Создать динамический массив обьектов класса "Сотрудник"
Здравствуйте! Не давно началось ООП и пока не все понимаю! Задача в базов классе задать три числовых значения!(класс сотрудник) и во втором...

Динамический массив обьектов
Добрый день! Помогите реализовать задачку! Мне надо создать динамический массив классов. В нем будет информация о файле....

6
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
12.05.2013, 14:37
C++
1
static
Добавлено через 56 секунд
C++
1
static tz *arr = new tz[size];
1
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
12.05.2013, 14:40  [ТС]
GetVariable, всеравно ругаеться
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
12.05.2013, 14:41
Ванги на следующим форуме.

выложите полный код.
0
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
12.05.2013, 14:42  [ТС]
GetVariable,
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
#include <iostream>
#include <string>
 
using namespace std;
 
enum CATEGORY{family, sport, cabrio, jeep};
 
const int num = 5;
 
class DATE
 
{
private:
    
    int day, month, year;
public:
 
    DATE(void){};
    DATE(int _day, int _month, int _year) { day = _day; month = _month; year = _year; };
    ~DATE(){};
 
    int GetDay(){return day;}
    int GetMonth(){return month;}
    int GetYear(){return year;}
 
    DATE& SetDay (int _day){day=_day; return *this;};
    DATE& SetMonth (int _month){month=_month; return *this;};
    DATE& SetYear (int _year){year=_year; return *this;};
 
    void inputD(){cout<<"Enter date: ";cin>>day>>month>>year;};
    void showD(){cout<<endl; cout<<day<<"."<<month<<"."<<year;};
};
 
class CAR
{
    char corporation[15];
    char car_name[15];
    int price;
    int made_date;
public:
    void INP()
    {
        cin >> corporation; 
        cin >> car_name;
        cin >> price;
        cin >> made_date;
    }
    void OUT()
    {
        cout << corporation; 
        cout << car_name;
        cout << price;
        cout << made_date;
    }
};
 
class tz
{
    CATEGORY category;
    CAR car;
    DATE date;
    int rent_price;
    int rent_time;
    char car_regnumber[10];
public:
    void tz_data_inp()
    {
        car.INP();
        string str;
        cin >> str;
        if (str == "family") 
            category = family; 
        if (str == "sport") 
            category = sport; 
        if (str == "cabrio") 
            category = cabrio; 
        if (str == "jeep") 
            category = jeep; 
        date.inputD();
        cin >> rent_price;
        cin >> rent_time;
        cin >> car_regnumber;
    }
    void tz_data_out()
    {
        car.OUT();
        char* category_arr[]={"family", "sport", "cabrio", "jeep"};
        cout << category_arr[category];
        date.showD();
        cout << rent_price;
        cout << rent_time;
        cout << car_regnumber;
    }
};
 
class prokat
{
    char corp_name[15];
    prokat(int size)
    {
        static tz *arr = new tz[size];
 
    }
};
 
void main()
{
    int size;
    cin >> size;
    prokat obj(size);
}
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
12.05.2013, 14:46
конструктор в private.

Добавлено через 28 секунд
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
#include <iostream>
#include <string>
 
using namespace std;
 
enum CATEGORY{family, sport, cabrio, jeep};
 
const int num = 5;
 
class DATE
 
{
private:
    
    int day, month, year;
public:
 
    DATE(void){};
    DATE(int _day, int _month, int _year) { day = _day; month = _month; year = _year; };
    ~DATE(){};
 
    int GetDay(){return day;}
    int GetMonth(){return month;}
    int GetYear(){return year;}
 
    DATE& SetDay (int _day){day=_day; return *this;};
    DATE& SetMonth (int _month){month=_month; return *this;};
    DATE& SetYear (int _year){year=_year; return *this;};
 
    void inputD(){cout<<"Enter date: ";cin>>day>>month>>year;};
    void showD(){cout<<endl; cout<<day<<"."<<month<<"."<<year;};
};
 
class CAR
{
    char corporation[15];
    char car_name[15];
    int price;
    int made_date;
public:
    void INP()
    {
        cin >> corporation; 
        cin >> car_name;
        cin >> price;
        cin >> made_date;
    }
    void OUT()
    {
        cout << corporation; 
        cout << car_name;
        cout << price;
        cout << made_date;
    }
};
 
class tz
{
    CATEGORY category;
    CAR car;
    DATE date;
    int rent_price;
    int rent_time;
    char car_regnumber[10];
public:
    void tz_data_inp()
    {
        car.INP();
        string str;
        cin >> str;
        if (str == "family") 
            category = family; 
        if (str == "sport") 
            category = sport; 
        if (str == "cabrio") 
            category = cabrio; 
        if (str == "jeep") 
            category = jeep; 
        date.inputD();
        cin >> rent_price;
        cin >> rent_time;
        cin >> car_regnumber;
    }
    void tz_data_out()
    {
        car.OUT();
        char* category_arr[]={"family", "sport", "cabrio", "jeep"};
        cout << category_arr[category];
        date.showD();
        cout << rent_price;
        cout << rent_time;
        cout << car_regnumber;
    }
};
 
class prokat
{
public:
    char corp_name[15];
    prokat(int size)
    {
        static tz *arr = new tz[size];
 
    }
};
 
void main()
{
    int size;
    cin >> size;
    prokat obj(size);
}
Добавлено через 1 минуту
вот так будет правильнее, без static

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
#include <iostream>
#include <string>
 
using namespace std;
 
enum CATEGORY{family, sport, cabrio, jeep};
 
const int num = 5;
 
class DATE
 
{
private:
    
    int day, month, year;
public:
 
    DATE(void){};
    DATE(int _day, int _month, int _year) { day = _day; month = _month; year = _year; };
    ~DATE(){};
 
    int GetDay(){return day;}
    int GetMonth(){return month;}
    int GetYear(){return year;}
 
    DATE& SetDay (int _day){day=_day; return *this;};
    DATE& SetMonth (int _month){month=_month; return *this;};
    DATE& SetYear (int _year){year=_year; return *this;};
 
    void inputD(){cout<<"Enter date: ";cin>>day>>month>>year;};
    void showD(){cout<<endl; cout<<day<<"."<<month<<"."<<year;};
};
 
class CAR
{
    char corporation[15];
    char car_name[15];
    int price;
    int made_date;
public:
    void INP()
    {
        cin >> corporation; 
        cin >> car_name;
        cin >> price;
        cin >> made_date;
    }
    void OUT()
    {
        cout << corporation; 
        cout << car_name;
        cout << price;
        cout << made_date;
    }
};
 
class tz
{
    CATEGORY category;
    CAR car;
    DATE date;
    int rent_price;
    int rent_time;
    char car_regnumber[10];
public:
    void tz_data_inp()
    {
        car.INP();
        string str;
        cin >> str;
        if (str == "family") 
            category = family; 
        if (str == "sport") 
            category = sport; 
        if (str == "cabrio") 
            category = cabrio; 
        if (str == "jeep") 
            category = jeep; 
        date.inputD();
        cin >> rent_price;
        cin >> rent_time;
        cin >> car_regnumber;
    }
    void tz_data_out()
    {
        car.OUT();
        char* category_arr[]={"family", "sport", "cabrio", "jeep"};
        cout << category_arr[category];
        date.showD();
        cout << rent_price;
        cout << rent_time;
        cout << car_regnumber;
    }
};
 
class prokat
{
public:
    char corp_name[15];
    tz* arr;
    prokat(int size)
    {
       arr = new tz[size];
    }
};
 
void main()
{
    int size;
    cin >> size;
    prokat obj(size);
}
1
138 / 5 / 1
Регистрация: 25.03.2013
Сообщений: 228
12.05.2013, 15:50  [ТС]
а как мне теперь заполнить каждый обьект из массива значениями? пробую простым способом через цикл но чтото ругаеться
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
#include <iostream>
#include <string>
 
using namespace std;
 
enum CATEGORY{family, sport, cabrio, jeep};
 
const int num = 5;
 
class DATE
 
{
private:
    
    int day, month, year;
public:
 
    DATE(void){};
    DATE(int _day, int _month, int _year) { day = _day; month = _month; year = _year; };
    ~DATE(){};
 
    int GetDay(){return day;}
    int GetMonth(){return month;}
    int GetYear(){return year;}
 
    DATE& SetDay (int _day){day=_day; return *this;};
    DATE& SetMonth (int _month){month=_month; return *this;};
    DATE& SetYear (int _year){year=_year; return *this;};
 
    void inputD(){cout<<"Enter date: ";cin>>day>>month>>year;};
    void showD(){cout<<endl; cout<<day<<"."<<month<<"."<<year;};
};
 
class CAR
{
    char corporation[15];
    char car_name[15];
    int price;
    int made_date;
public:
    void INP()
    {
        cin >> corporation; 
        cin >> car_name;
        cin >> price;
        cin >> made_date;
    }
    void OUT()
    {
        cout << corporation; 
        cout << car_name;
        cout << price;
        cout << made_date;
    }
};
 
class tz
{
    CATEGORY category;
    CAR car;
    DATE date;
    int rent_price;
    int rent_time;
    char car_regnumber[10];
public:
    void tz_data_inp()
    {
        car.INP();
        string str;
        cin >> str;
        if (str == "family") 
            category = family; 
        if (str == "sport") 
            category = sport; 
        if (str == "cabrio") 
            category = cabrio; 
        if (str == "jeep") 
            category = jeep; 
        date.inputD();
        cin >> rent_price;
        cin >> rent_time;
        cin >> car_regnumber;
    }
    void tz_data_out()
    {
        car.OUT();
        char* category_arr[]={"family", "sport", "cabrio", "jeep"};
        cout << category_arr[category];
        date.showD();
        cout << rent_price;
        cout << rent_time;
        cout << car_regnumber;
    }
};
 
class prokat
{ 
    char corp_name[15];
public:
    tz* arr;
    prokat(int size)
    {
       arr = new tz[size];
    }
    void inp_data(int size)
    {
        cin >> corp_name;
        for(int i=0;i<size;i++)
        {
            tz[i].tz_data_inp();
        }
    }
};
 
void main()
{
    int size;
    cin >> size;
    prokat obj(size);
}
Добавлено через 6 минут
все. понял. вместо tz[i].tz_data_inp(); надо было arr[i].tz_data_inp(); писать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.05.2013, 15:50
Помогаю со студенческими работами здесь

Динамический массив при наследовании, элементами которого являются объекты класса наследника динамический массив
Попробовал создать динамический массив, у которого элементы - объекты класса динамический массив, причем использовал класс-наследник от...

Сделать динамический массив структур, причем в структуре так же существует динамический массив
Добрый день. Есть такая пзадача: нужно сделать динамический массив структур, причем в структуре так же существует динамический массив....

Динамический массив ,элементами которого являются объекты класса динамический массив
Доброго времени суток, захотел создать динамический массив ,элементами которого являются объекты класса динамический массив, если...

Создать динамический класс Book, содержащей динамический массив Authors
всем привет. может кто-то набросать код для такой вот задачи: Создать динамический класс Book, содержащей динамический массив...

Создать динамический класс Book, содержащий динамический массив Authors
Мне нужно написать программу,а я не знаю как ее написать. Знаю, тут люди за кого-то не делают, укажите хотя бы направление. вот сама...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru