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

Добавить и удалить объект из массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не могу ввести в файл строку во время чтения, указатель позиции в файле http://www.cyberforum.ru/cpp-beginners/thread1051241.html
читаю из файла данные в структуру, и сравниваю их с str и str2, при совпадении надо будет добавить другую структуру в файл. Решил сделать так - читаю строки в файле, при совпадении в if() записываю...
C++ Что делают create_array и print_array? объясните подробно, что выполняют эти строки, пожалуйста)) create_array(arr, N); print_array(arr, N); http://www.cyberforum.ru/cpp-beginners/thread1051231.html
Рекурсивная функция суммы ряда C++
Написать рекурсивную программу, которая считала бы сумму элементов следующего ряда: 2^0 + 2^1 + ... + 2^(n-1) + 2^n. Число n задается вручную. (Писал сам, но с использованием функции pow(), сказали -...
C++ [C++ Error] Unit1.cpp(22): E2268 Call to undefined function 'While'
Всем прет. Помогите плз. Пишу квик сорт. Выдает вот эту ошибку, что делать? void Q_Sort (int a, int l, int r); void Q_Sort (int a, int l, int r){ int i,j,m,wsp; i=l; j=r; m=a; While (i<j)...
C++ Работа с функциями, возвращающими значения. Передача параметров по значению http://www.cyberforum.ru/cpp-beginners/thread1051220.html
Здравствуйте.Помогите пожалуйста я составил программу а через ссылки не могу.вот условие: Даны отрезки a, b, c и d. Для каждой тройки этих отрезков, из которых можно построить треугольник,...
C++ Разработать класс Flat с полями Адрес,Количество комнат, этаж, Общ. площадь, Цена Разработать класс Flat с полями Адрес,Количество комнат, этаж, Общ. площадь, Цена. Реализовать различные виды конструкторов, методы ввода и вывода, методы get и set для значений полей. Пусть дано... подробнее

Показать сообщение отдельно
Lahden
1 / 1 / 0
Регистрация: 26.09.2013
Сообщений: 52

Добавить и удалить объект из массива - C++

21.12.2013, 21:54. Просмотров 186. Ответов 0
Метки (Все метки)

Есть массив указателей на объекты, и в него нужно добавлять и удалять объекты.
Главное условие - перегрузка операторов + и - для этих операций (в класса Каталог)
Коротко вся суть:
1. Есть 4 класса: Меню, Контрол, Каталог и Авторский класс
2. Меню - пользовательский интерфейс и ввод исходных данных, отображение ответов на запросы пользователя
3. Чтобы получить ответы Меню обращается к объекту класса Контрол, которые передает запрос Каталогу
4. Объекты Авторского класса включены в Каталог посредством массива указателей (Каталог создает, ищет и удаляет объекты Авторского Класса)

Вот прототипы и реализации этих перегрузок, но я не понимаю, что и где писать дальше, чтобы выполнялась сами операции.
Реализация
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
bool CCatalogue :: operator + (const CFruit& a)
{
    if (findIndex(a.m_name) != 1)
        return false;
    m_p [m_n++] = &a; <- Здесь выдает ошибку: =: невозможно преобразовать 'const CFruit *' в 'CFruit *'
    return true;
}
bool CCatalogue :: operator - (const char* name)
{
    int j = findIndex(name);
    if (j<0)
        return false;
    delete m_p [j];
    while (j < m_n - 1)
        m_p [j++] = m_p [j+1];
    m_n--;
    return true;
}

Прототипы
Кликните здесь для просмотра всего текста
C++
1
2
    bool CCatalogue:: operator + (const CFruit&);
bool CCatalogue:: operator - (const char*);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru