Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 09.08.2011
Сообщений: 11
1

Массив объектов

08.05.2012, 00:42. Показов 484. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задумка:
Сделать некую подобию базы данных, список из "объектов". К объектам привязаны соответствующие данные разных типов (int, char и тд). С этими данными мне нужно будет в дальнейшем работать, поэтому должен быть постоянный доступ ко всем объектам в списке. К примеру, ОБЪЕКТ: Федя - 21 (год) - 72(вес).
Изначально список пуст. Программа должна включать в себя возможность добавления вручную новых Федь в любое время.

Моя реализация:
Я пытаюсь сделать это через классы, делая массивы объектов. В массивах всегда есть доступ к любому элементу, если знаешь его порядковый номер. Должно прокатить.
Но там нужно с самого начала прописывать в главной функции конструктор, сколько элементов должно быть и занулять их вручную с самого начала, чтобы потом там никакого хлама не было. И я не совсем понимаю, как ориентироваться в такой штуке. Короче говоря, получается не очень.

Класс:
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
class SHIT
{
    char name[20];
    int age;
 
public:
    SHIT(char new_name[20],int new_age)
    {
        strcpy(name, new_name);
        age = new_age;
    }
 
    // Функции ввода/вывода, раньше с ними работал, походу они не нужны будут
    void SetName(char *n); 
    void ShowName(char *n);
    void SetAge(int age);
    int ShowAge();
};
 
void SHIT::SetName(char *n)
{
    strcpy(name, n);
}
 
void SHIT::ShowName(char *n)
{
    strcpy(n, name);
}
 
void SHIT::SetAge(int aa)
{
    age = aa;
}
 
int SHIT::ShowAge()
{
    return age;
}
Главная функция:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int main()
{
    int x=0;
    char xx="shit"; // не фурычит - ясен перец, это я пока условно
 
    SHIT shit_massive[2] = {CPU(xx,x),CPU(xx,x)};  //вот этот дурацкий конструктор
        
    for (int i=0; i<2; i++)
    {
        cout << "Age[" << i << "]=" << shit_massive[i].ShowAge() << endl;
    }
    return 0;
}
Что-то мне подсказывает, что все это можно реализовать как-то по-другому, более по-человечески. А то моим методом, мне кажется, танцы с бубном не за горами.

Товарищи, требуется помощь. Подкиньте идеи или распишите какие-нибудь стандартные методы для подобных задач, если таковые имеются.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2012, 00:42
Ответы с готовыми решениями:

Передача объектов дочерних классов через массив объектов родительского класса в функцию
Здравствуйте. Возможно, вопрос больше относится к теории ООП, но все же я не решился задавать его в...

Написать класс Матрица. Массив объектов класса Массив
Написать класс Матрица (в данном случае матрица – массив объектов класса Массив из предыдущего...

массив объектов
добрый вечер всем. Возникла такая проблема - необходимо создать массив деков символов. Я хочу...

Массив объектов
Здравствуйте,помогите починить программу,не знаю в чем причина,мб недопонимаю.... Задание: Элементы...

1
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
08.05.2012, 01:01 2
опиши конструктор по умолчанию
SHIT::SHIT()
т.к. ты описываешь аргументированный и компилятор не создает свой.
Тогда можно будет написать вот так:
C++
1
SHIT shit_array[10];
P.S. и желательно свойста делать типа private и предоставлять лишь методы для работы с ними
0
08.05.2012, 01:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.05.2012, 01:01
Помогаю со студенческими работами здесь

Массив объектов
При решении задачи необходимо, без использования STL, описать класс, который используется для...

Массив объектов
При решении задачи необходимо, без использования STL, описать класс, который используется для...

Массив объектов
Всем привет. Даны три класса. Мне нужно создать массив, в который я смогу добавить обьекты...

Массив объектов
Здравствуйте.Нужна помощь с программой, не могу создать массив объектов. В своем коде удалось...

Массив объектов
Доброго времени суток... Подскажите пожалуйста у меня есть следующий код: class vertex{ public:...

С++ массив объектов
Люди начался новый учебный год опять обращаюсь за помощью File Имя файла.размер. количество...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru