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

Виртуальность и наследование - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разработка приложения. Определить иерархию устройств http://www.cyberforum.ru/cpp-beginners/thread947641.html
Здравствуйте. Мне нужна помощь. Прислали задание, а сам смысл задания я понять не могу. Задание: определить иерархию устройств: телефонов, планшетов, ридеров и пр. устройств. Экипировать отдел...
C++ "выполнить" + консольное приложение Пишу в окошке "выполнить" путь к приложению + параметр рядом. напр. C:\\game.exe speedhack Нужно чтобы этот параметр считывался приложением. Возможно ли? http://www.cyberforum.ru/cpp-beginners/thread947631.html
C++ Генератор случайных чисел
Здорова господа! Нужно написать свой собственный генератор случайных чисел, такой же примерно как rand. От примерно написал кое что, с книги код выдрал, это нормальное распределение случайных...
Немогу разобратся с идентификатором C++
Доброе время суток! В общем создал Win32 проект (dll библиотеки, с использованием MFC). Добавил код (.cpp , .h файлы) User.h #pragma once...
C++ Прекращена работа программы proj.exe http://www.cyberforum.ru/cpp-beginners/thread947537.html
Доброго времени суток всем. У меня возникла неприятная проблемка. Я написал программу(даже не всю а только часть) которая, в последствии, будет что-то вроде морского боя на консоле. В процессе...
C++ Уже 2 года не могу установить c++ Ребят нужно работать на 2010 версии, но при установке на этапе VC 9.0 во всех версиях возникает или ошибка или до бесконечности зависает установка, мне пришла в голову мысль - можно установить на... подробнее

Показать сообщение отдельно
Kaskera
0 / 0 / 0
Регистрация: 27.07.2013
Сообщений: 34

Виртуальность и наследование - C++

03.09.2013, 12:57. Просмотров 373. Ответов 8
Метки (Все метки)

Очень интересный вопрос!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
class Super {
    public: virtual void print() const {
        std::cout << __PRETTY_FUNCTION__ << std::endl;
    }
    public: virtual ~Super() {}
};
 
class Sub : public Super {
    public: virtual void print() const {
        std::cout << __PRETTY_FUNCTION__ << std::endl;
    }
};
 
int main() {
    Super *obj = new Sub();
    // how to call 'Super::print()' from 'obj'
    // without using operator '.' and/or '->'?
    delete obj;
}
Как вызвать Super :: print() с obj, не используя операторы '.' или '->' ?
Автор пишет, что на первый взгляд все просто, но это не так. Если есть решение, скомпилируйте его. Всегда вызывается Sub :: print ().
Только одно решение известно.

http://ideone.com/wwsksb

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