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

Stack со сменой представления - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нужен кусок кода http://www.cyberforum.ru/cpp-beginners/thread950736.html
Привет всем, даже не знаю сюда ли обратился.....В общем нужен код который выполняется с момента нажатия в браузере например мозиллы CTRL+U. Где мне его взять? Если у кого есть напишите пожалуйста!...
C++ Работа с com port подскажите пожалуйста!! написал программку, отправляет запрос на устройство пакет данных (без контрольной суммы), должен придти ответ и записаться в массив!порт открывается, отправляю данные, НЕ... http://www.cyberforum.ru/cpp-beginners/thread950730.html
Дана строка до точки, группа символов в которой между пробелами считается словом, знаки препинания от слова пробелом не отделяются C++
Дано некоторое число. Вставить его перед каждым восклицательным знаком. все числовые данные вводятся с клавиатуры,и если можно с пояснениями как работает программа и что какой цикл в ней...
C++ Необходимо написать и отладить две программы в среде Borland C++ 3.1. Первая программа должна сформировать двоичный файл. Вторая – считать данные из э
Создать двоичный файл и записать в него n целых чисел. Из файла сформировать массив, записав в него только ненулевые компоненты, находящиеся после максимального элемента. все числовые данные...
C++ Необходимо написать и отладить программу в среде Borland C++ 3.1 по заданному варианту с обязательным применением динамических массивов и функций http://www.cyberforum.ru/cpp-beginners/thread950712.html
Упорядочить элементы вещественного массива следующим образом: по возрастанию элементы, расположенные в массиве до минимального, по убыванию элементы, расположенные после максимального. Создать...
C++ Переписать элементы массива вещественных чисел X в обратном порядке в массив Y. Задание: Необходимо написать и отладить программу в среде Borland C++ 3.1 с обязательным применением массивов. 1.Переписать элементы массива вещественных чисел X в обратном порядке в массив Y.... подробнее

Показать сообщение отдельно
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
09.09.2013, 14:50  [ТС]
Цитата Сообщение от vxg Посмотреть сообщение
возьмите класс Stack и перепишите его таким образом что бы его методы стали виртуальными. тупо?
Так можно его не переписывать просто сделать наследование, у нас же может быть какой нить комерческий класс. Ну да виртуальные полюбом нужно делать методы, а то dynamic_cast<>() работать не будет. Ну да наверно так и делать.

А для реального класса Stack который мы не можем переписать не абстрактного, мы можем сделать наследование к классу у которого будет абстрактный член (полиморфный тип) и от него еще поделать наследники, двойной как бы уровень косвенности, да наверно так.
Там пишется что к любой иерархии классов можно лекгко встроить любой другой класс или иерархию, там просто двойное наследование применяют и наследник имеет свойства двух иерархий.

О еще вариант если Stack не полиморфный класс и мы его изменить не можем, то мы создаем класс свой Abstrakt_Stack полиморфный, от него делаем производный класс A : public Abstrakt_Stack, public Stack и B : public Abstrakt_Stack, public Stack эти классы будут размым представлением класса Stack и уже через указатель не Stack, а Abstrakt_Stack мы можем в реальном времени менять представление Stack. Этот прием видимо применяется для реальных библиотек которые нельзя изменить, но нужно расширить.

Добавлено через 2 минуты
vxg, Можно создать уровень косвенности для любого класса в иерархии классов и решить любую проблему .
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru