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

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

Войти
Регистрация
Восстановить пароль
 
hepr
61 / 33 / 5
Регистрация: 21.10.2010
Сообщений: 539
#1

Апгрейдить класс - C++

27.03.2012, 09:56. Просмотров 294. Ответов 2
Метки нет (Все метки)

Здравствуйте, есть, скажем, такой код:
C++
1
2
class A{};
class B : public A {};
Как можно апгрейдить объект класса A до объекта класса В, то есть у нас имеется:
A someObject;
как можно сделать из этого объекта полноценный объект класса В, и можно ли
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2012, 09:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Апгрейдить класс (C++):

Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени? - C++
На самом деле ничё фантастического я не прошу, ведь: template <class T> class matrix { friend class diagonal; ...

Класс таблиц баз данных и класс записей в таблице(реляционная таблица). Предусмотреть класс связей между таблицами - C++
Здравствуйте! Никак не могу продумать структуру этой программы. Проходим наследование, но я все равно не знаю, как его здесь применить. Как...

Отдельно класс данных, класс формул и главный класс - C++
Здравствуйте! У меня есть три вопроса. Первый вопрос. Скажите пожалуйста! Правильный ли это подход к созданию приложений :...

Реализовать класс родительский класс "Пара чисел" и класс-наследник "Комплексное число" - C++
Ткма работы создать класс pair (пара чисел); определить метод перемножения полей и операцию сложения пар (a,b)+(c,d) =(a+b,c+d)...

Класс, производный класс, паблик-класс - C++
Задание: Создать класс колесо, которое имеет радиус. Определить конструкторы и метод доступа. Создать класс машин, содержащий класс колесо....

Создать класс “Автомагазин”, состоящей из класса ”Марки машин”. Класс “Автомагазин ”:название магазина, адрес, телефон. Класс “ Марки машин ”: марка - C++
Создать класс “Автомагазин”, состоящей из класса ”Марки машин”. Класс “Автомагазин ”:название магазина, адрес, телефон. Класс “ Марки...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
PointsEqual
ниначмуроФ
834 / 518 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
27.03.2012, 10:39 #2
C++
1
2
3
    A* a = new A;
 
    B* b = static_cast<B*>(a);
zss
Модератор
Эксперт С++
6355 / 5919 / 1919
Регистрация: 18.12.2011
Сообщений: 15,215
Завершенные тесты: 1
27.03.2012, 10:52 #3
Цитата Сообщение от PointsEqual Посмотреть сообщение
C++
1
2
    A* a = new A;
    B* b = static_cast<B*>(a);
b в этом случае не будет содержать объектов,
имеющихся только в классе B.
Надо делать так
C++
1
    A* a = new B;
Тогда имеете полное право выполнять приведение типа.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2012, 10:52
Привет! Вот еще темы с ответами:

Абстрактный класс CGraphicsObject, его наследник - базовый класс CPoint, и класс - наследник от CPoint - C++
Всем доброй ночи! Очень нужна помощь и по мере возможности разъяснения на темы: абстрактный класс в задании(что он из себя представляет и...

Иерархия геометрических объектов: клас точка->класс квадрат->класс прямоугольник - C++
Иерархия геометрических объектов: класс точка-&gt;класс квадрат-&gt;класс прямоугольник. Построить эту иерархию наследованием.. Прошу помочь -...

Ошибка в выводе данных, класс выводит правильно, а класс в классе - нет - C++
Неизвестная для меня проблема. Класс выводит данные правильно из Consigment, а вот третий экземпляр класса, работает не верно, если...

Реализовать класс Goods используя для представления цены класс Money - C++
Реализовать класс Goods (пункт 1 ), используя для представления цены класс Money с пункта 2 Реализовать метод уценки товара, уменьшая цену...


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

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

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