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

Задачка по классам и векторам в c++

26.10.2020, 18:06. Показов 989. Ответов 3

Студворк — интернет-сервис помощи студентам
Создать базовый и производный класс Base и Derived, связанных полиморфно.
Создать в базовом классе член-данных типа vector<int>* и инициализировать его произвольным числом в конструкторе по умолчанию.
Реализовать отдельный от иерархии класс базы данных DB, в который в приватную область поместить хранилище типа vector < Base *>.
В функции main есть такой код:
C++
1
2
3
4
5
6
void main (){
    DB db1, db2;
    db1.add( new Base);
    db1.add( new Child);
    db2=db1;
}
Добавить чего не хватает.
Подсказка: в классе DB следует реализовать оператор присваивания: operator=(const DB& )
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.10.2020, 18:06
Ответы с готовыми решениями:

Простая задачка по классам
Пожалуйста, помогите с заданием Реализовать класс «Библиотечная книга». О каждой книге хранятся следующие сведения: инвентарный номер,...

Задача по векторам №2
Задача: Прочитайте некоторый текст, сохраняя каждое введенное слово как отдельный элемент вектора. Преобразуйте символы каждого слова в...

Вопрос по векторам
Вектор AB. Противоположны ему векторы BA и -AB. Т.е. АВ = - ВА Так?

3
59 / 49 / 14
Регистрация: 23.02.2016
Сообщений: 433
26.10.2020, 18:45
Тимоа,
Цитата Сообщение от Тимоа Посмотреть сообщение
Создать базовый и производный класс Base
Цитата Сообщение от Тимоа Посмотреть сообщение
Создать в базовом классе член-данных типа vector<int>* и инициализировать его произвольным числом в конструкторе по умолчанию
не уверен, что так, но вроде как можно так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Base
{
 
private:
    vector<int>* data;
 
public:
    Base() {
        data = new vector<int> (1, 0); // вектор из одного элемента 0
    }
 
    virtual void showData() = 0; // чисто виртуальный метод
 
    ~Base() {
        delete data[];  
    }
 
};
Через чисто виртуальный метод showData() свяжите с классом Derived полиморфно.

Правда конструктор уж больно сильно не нравится в таком виде...
0
76 / 68 / 10
Регистрация: 11.07.2016
Сообщений: 320
26.10.2020, 20:25
Timurs, ты хотя бы скомпилировать свой код пробовал? В любом, случае, тут столько всего страшного, что даже не знаешь с чего начать.
0
59 / 49 / 14
Регистрация: 23.02.2016
Сообщений: 433
26.10.2020, 21:59
Zirak,
Цитата Сообщение от Zirak Посмотреть сообщение
ты хотя бы скомпилировать свой код пробовал?
разумеется нет, так с наскока накидал) Сорямба, delete data;, больше косяков не вижу. А компилировать тут нечего, объекты абстрактных классов не создаются, надо дальше разрабатывать, всё по заданию собственно.

Добавлено через 3 минуты
Zirak, ой, кажись тут виртуальный деструктор нужен. Можно и так и эдак попробовать, заодно и почитать ещё раз про деструкторы. В приниципе если производные классы ничего выделять не будут, то можно и не писать виртуальный деструктор если логически рассуждать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.10.2020, 21:59
Помогаю со студенческими работами здесь

Цикл по векторам
Здравствуйте, помогите написать код для цикла. Без цикла получается вот такая картина, нужно написать цикл чтобы выпустилось N-...

Разложение вектора по векторам
Вторая задача: Вектор x перпендикулярен оси Оу и вектору p и образует тупой угол с осью Оz. Найти координаты вектора х, если вектор...

Нахождение угла по векторам
Как найти угол зная вектор position и вектор указателя мыши с помощью libGDX?

Нарисовать по векторам в паскале
Заранее благодарен! Составьте для исполнителя «Чертежник» системы ABC Pascal с помощью смещения по векторам.

Вектор а ортогонален векторам b и c
Вектор а ортогонален векторам b и с. известна длина а. Найти а!!. b(-1;1;-1) c(1;1;1\3) |a|= sqrt14, пр OY a&lt;0. как это делается?...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru