С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Gwini
10 / 10 / 3
Регистрация: 08.03.2014
Сообщений: 70
#1

Что делать если нужно знести информацию в 2 разных объекта базового класса при закрытом наследование - C++

02.08.2014, 03:09. Просмотров 348. Ответов 8
Метки нет (Все метки)

Что делать если нужно знести информацию в 2 разных объекта базового класса при закрытом наследование? Например мне нужно держать скажем имя и проффесию в разных обьектах string.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2014, 03:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что делать если нужно знести информацию в 2 разных объекта базового класса при закрытом наследование (C++):

Доступ к объекту базового класса при закрытом наследовании - C++
Есть класс Pair из стандартной библиотеки. Он у меня содержит 2 массива valarray. От класса Pair я создаю наследника Wine. В классе Wine...

Как используя закрытое наследование использовать 2 объекта базового класса? - C++
Доброго времени суток. Учусь по книге "Прата С. Язык программирования C++. Лекции и упражнения. Не могу понять упражнение...(глава 14,...

Наследование конструктора из базового класса - C++
#include "stdafx.h" #include <iostream> #include <cstring> using namespace std; //////////////////// class String { ...

Указатель на объект базового класса и адрес объекта производного класса - C++
Пример кода: class Class1 { public: Class1(int x) { j = new int; *j = x; } ~Class1() {delete j;}

Реализовать оператор= для присваивания объекта класса-потомка объекту базового класса - C++
Есть два класса A и B, причем класс B является потомком A. Как реализовать следующее: obj_A = obj_B и obj_B = obj_A? Добавлено через 9...

Использование перегруженного оператора ввода/вывода в поток базового класса для объекта производного класса - C++
Здравствуйте! Можно ли использовать перегруженный оператор ввода/вывода в поток из базового класса для объекта производного класса, если...

8
CyberSolver
101 / 74 / 17
Регистрация: 23.07.2014
Сообщений: 733
Записей в блоге: 1
02.08.2014, 04:26 #2
Gwini, если вам
нужно держать скажем имя и проффесию в разных обьектах string
используйте композицию. Зачем вам от них наследоваться?
0
Gwini
10 / 10 / 3
Регистрация: 08.03.2014
Сообщений: 70
02.08.2014, 04:41  [ТС] #3
Цитата Сообщение от CyberSolver Посмотреть сообщение
используйте композицию. Зачем вам от них наследоваться?
Да задание просто такое, сначала включением, а потом закрытым наследованием. Я уже реализировал, но мне стало интересно что если надо 2 отдельных объекта в одном базовом классе, и вообще возможно ли это.
0
CyberSolver
101 / 74 / 17
Регистрация: 23.07.2014
Сообщений: 733
Записей в блоге: 1
02.08.2014, 04:45 #4
Gwini, во избежание приведи текст задания полностью.
0
Gwini
10 / 10 / 3
Регистрация: 08.03.2014
Сообщений: 70
02.08.2014, 04:49  [ТС] #5
Цитата Сообщение от CyberSolver Посмотреть сообщение
Gwini, во избежание приведи текст задания полностью.
да в задание можно обойтись и без этого, просто если понадобиться, возможно ли такое?
0
gray_fox
What a waste!
1522 / 1227 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
02.08.2014, 04:52 #6
Цитата Сообщение от Gwini Посмотреть сообщение
Я уже реализировал, но мне стало интересно что если надо 2 отдельных объекта в одном базовом классе, и вообще возможно ли это.
От одного и того же класса можно унаследоваться только один раз, так что (без костылей) никак.

Добавлено через 2 минуты
Можно наследовать класс от std::pair<std::string, std::string> например.
1
CyberSolver
101 / 74 / 17
Регистрация: 23.07.2014
Сообщений: 733
Записей в блоге: 1
02.08.2014, 04:52 #7
gray_fox, да всего-то промежуточный левый класс.
1
Gwini
10 / 10 / 3
Регистрация: 08.03.2014
Сообщений: 70
02.08.2014, 04:58  [ТС] #8
ясно, спасибо.
0
CyberSolver
101 / 74 / 17
Регистрация: 23.07.2014
Сообщений: 733
Записей в блоге: 1
02.08.2014, 05:02 #9
gray_fox, наследоваться от пары - тоже вариант.

Эдак мы скоро договоримся о наследовании от tuple<string, string, string, string>.

Добавлено через 15 секунд
gray_fox, наследоваться от пары - тоже вариант.

Эдак мы скоро договоримся о наследовании от tuple<string, string, string, string>.
0
02.08.2014, 05:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2014, 05:02
Привет! Вот еще темы с ответами:

Запретить наследование члена базового класса - C++
class A { public: int a; virtual void F()=0; }; Можно ли запретить наследование поля &quot;а&quot; классу наследнику?...

Наследование классов. Доступ к данным базового класса - C++
Здравствуйте! Застрял на задачке... Суть самого задания: Создать класс Car (машина), который характеризуется торговой маркой (строка),...

Запретить наследование некоторых членов базового класса - C++
можно ли запретить унаследование некоторых членов базового(любого) класса?

Наследование: почему вызывается метод базового класса, а не производного? - C++
Всем привет, такой вопрос, почему вызывается в данном коде метод базового класса, а не производного (без указания ключевого слова virtual...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.