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

ох уж этот полиморфизм - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Без дополнительных библиотек преобразования текстового файла http://www.cyberforum.ru/cpp-beginners/thread1087286.html
Добрый день! Ребята срочно нужна помощь, буду признателен,нужно в С++ разработать программу,желательно без подключений дополнительных библиотек следующего условия: Правило преобразования текстового файла (применяется для каждой строки исходного текстового файла) В каждой второй строке надо удалить третье слово, если такое есть, при этом количество пробелов в строке не должно измениться....
C++ Как запустить компилятор в parallel studio Как запустить компилятор в parallel studio? То есть саму студию. Не могу ярлык найти, только для VS есть и различных либ. http://www.cyberforum.ru/cpp-beginners/thread1087236.html
Как минимально просто использовать функция std::find с последовательность типа : list<myClass*> C++
Добрый день. Как минимально просто использовать функция std::find с последовательность типа : list<myClass*>,если в классе перегружен оператор сравнения?
C++ Напишите программу, которая запрашивает расход бензина в европейском стиле (количество литров на 100 км) и преобразует его в стиль, принятый в США —
Добрый вечер! Напишите программу, которая запрашивает расход бензина в европейском стиле (количество литров на 100 км) и преобразует его в стиль, принятый в США — число миль на галлон. Обратите внимание, что кроме использования других единиц измерений, принятый в США подход (расстояние/топливо) противоположен европейскому (топливо/расстояние). Учтите, что 100 километров соответствуют...
C++ Программа на Microsoft Visual Studio 2012, нужно организовать файл данных http://www.cyberforum.ru/cpp-beginners/thread1087216.html
Необходимо организовать файл данных из данной программы #include <iostream> #include <time.h> #include <conio.h> using namespace std; /* Описать структуру с именем ITINERARY, который вмещает в себе, следующие поля : FIRST– название начального пункта маршрута, FINAL– название конечного пункта маршрута, NUM– номер маршрута, DISTANCE– расстояние в километрах.Написать программу, которая...
C++ Калькулятор выводит неверный результат Изучаю С++ по Страуструпу. Дошел до следующей задачи(калькулятор) и "буксую", не пойму в чем дело, код с книгой сверял несколько раз. Программа запускается, но выводит не верный результат, всегда начинающийся с "156", и то после того как введешь ещё несколько дополнительных чисел. Будьте добры, помогите начинающему) Буду рад любой помощи. Библиотеку "std_lib_facilities.h" можно найти... подробнее

Показать сообщение отдельно
Somebody
2775 / 1588 / 142
Регистрация: 03.12.2007
Сообщений: 4,162
Завершенные тесты: 1
01.02.2014, 22:50     ох уж этот полиморфизм
Google подсказывает:
http://stackoverflow.com/questions/4...nd-downcasting
http://stackoverflow.com/questions/8...ot-polymorphic
http://stackoverflow.com/questions/1...hic-base-class

In order for dynamic_cast to work the object needs to be polymorphic. The reason for this is that dynamic_cast needs somewhere to store the type information that is will use to perform the cast, and it does this by storing the information alongside the vtable for the class. In order for there to be a vtable you need to make at least one of your methods virtual.
The easiest way around this is to flag the base class destructor as virtual.
Upcasting (ie derived to base) doesn't needs a cast as the compiler is able to check that the cast would work at compile time. However, the same isn't true when downcasting.
 
Текущее время: 10:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru