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

Восходящее и нисходящее преобразование (Upcasting and Downcasting) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ cygwin1.dll не хватает библиотеки http://www.cyberforum.ru/cpp-beginners/thread653891.html
всем привет интересно узнать, как можно "подключить" или "вшить" данную библиотеку в программу, чтобы программа не требовала этой библиотеки на компьютере на котором нету этой библиотеки....
C++ мигающий курсор В CODEBLOCS в окне набора текста программы появился мигающий курсор "_", а раньше был курсор "|". И редактирование текста поменялось. Теперь в строчке нельзя между символами вставить другой символ,... http://www.cyberforum.ru/cpp-beginners/thread653889.html
Вызов перегрузки базового класса C++
Начитавшись c# забыл кое-что по с++, никак теперь не могу вспомнить как вызвать перегрузку базового класса в перегрузке наследника. Есть что-то типа: class Foo { public: const Foo&...
C++ Запутанный код на С++
Здравствуйте уважаемые программисты!Помогите,пожалуйста разобрать запутанный с++ код. #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <iostream> using...
C++ Определить какая из точек ближе всего лежит к началу координат http://www.cyberforum.ru/cpp-beginners/thread653804.html
Помогите решить задачи. 1)Заданы 3 точки р1(х1,у1),р2(х2,у2),р3(х3,у3).Определить какая из точек ближе всего лежит к началу координаты. 2)Спортсмен в первый день пробежал 2 км.Каждый...
C++ уточнение по Объеденениям Прочитал на http://programmersclub.ru/19/, что Объединения хранят инфу только для одного элемента в данный момент времени, но зделав один пример в Визуал студио 2010 это не совсем так. Вот код: ... подробнее

Показать сообщение отдельно
ProNoooob
74 / 74 / 6
Регистрация: 14.10.2009
Сообщений: 121
18.09.2012, 15:47
Это про наследование.

Upcasting - преобразование вверх по иерархии. То есть от классов наследников к базовым классам.
Смысл в том, что ты можешь создать десяток наследников у класса. Абсолютно разных.
Взять у них указатели и преобразовать их к типу базового класса. Теперь ты можешь например сложить их в массив и вызывать методы базового класса. Но вызываться при этом будут методы классов наследников.

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