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

Немного не понимаю как правильно сделать наследование - C++

Восстановить пароль Регистрация
 
Flurry
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 9
26.12.2012, 11:33     Немного не понимаю как правильно сделать наследование #1
Вот например, есть структура Point(точка). Если надо сделать структуру Round(круг),
то в этом случае надо наследовать Point потому что у круга только одна точка - это его центр.

А если создадим структуру Square(квадрат) то в этом случае с наследованием не получится?
У квадрата 4 угла и нужны 4 Point

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct Point
{
    int x;
    int y;
};
 
struct Round : Point
{
    int radius;
};
 
struct Square : Point ???
{
    ???
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2012, 11:33     Немного не понимаю как правильно сделать наследование
Посмотрите здесь:

C++ Наследование, не понимаю в чем ошибка
C++ Наследование\перегрузка, не понимаю в чем ошибка
не понимаю как сделать наследование классов C++
Правильно ли я понимаю ссылки и указатели. Работу с ними. Я сам прокомментировал код. Скажите правильно или нет. C++
Обьясните как правильно организовывать наследование C++
немного графики+векторы. по смыслу понимаю, а как реализовать - запуталась C++
C++ Не понимаю как сделать
День добрый! Как устроен стек при работе программ ? Правильно ли я понимаю? C++
C++ Как правильно писать наследование
C++ Немного исправить ошибки. Тема: стэки, списки, очереди. Не понимаю в чем дело
Как правильно реализовать множественное наследование? C++
Не понимаю как сделать! C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2437 / 1609 / 235
Регистрация: 24.11.2012
Сообщений: 3,949
26.12.2012, 11:38     Немного не понимаю как правильно сделать наследование #2
Наследование - это отношение типа "является". Является ли круг точкой? Нет. И в постановке вопроса уже есть ответ:

Цитата Сообщение от Flurry Посмотреть сообщение
у круга только одна точка - это его центр.
Т.е. у класса "Круг" одним из полей будет "Точка".
Flurry
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 9
26.12.2012, 11:41  [ТС]     Немного не понимаю как правильно сделать наследование #3
Цитата Сообщение от 0x10 Посмотреть сообщение
И в постановке вопроса уже есть ответ:
То есть я правильно думаю что наследовать надо когда у структуры только один наследник? А если их много?

Цитата Сообщение от 0x10 Посмотреть сообщение
Является ли круг точкой? Нет
У круга есть центр и он является точкой
0x10
2437 / 1609 / 235
Регистрация: 24.11.2012
Сообщений: 3,949
26.12.2012, 13:41     Немного не понимаю как правильно сделать наследование #4
Наследников может быть несколько, как и базовых классов. (Вот пишу эту фразу и боюсь быть понятым неправильно)
Yandex
Объявления
26.12.2012, 13:41     Немного не понимаю как правильно сделать наследование
Ответ Создать тему
Опции темы

Текущее время: 01:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru