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

Виртуальность и наследование - 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. От примерно написал кое что, с книги код выдрал, это нормальное распределение случайных чисел в пределах от 0 до 10 map<int,int> m; unsigned long seed=0; long n=10; //от 0 до 9
Немогу разобратся с идентификатором C++
Доброе время суток! В общем создал Win32 проект (dll библиотеки, с использованием MFC). Добавил код (.cpp , .h файлы) User.h #pragma once //--------------------------------------------------------------------------- #define oFrameSpeed 0x0088B700 // float
C++ Прекращена работа программы proj.exe http://www.cyberforum.ru/cpp-beginners/thread947537.html
Доброго времени суток всем. У меня возникла неприятная проблемка. Я написал программу(даже не всю а только часть) которая, в последствии, будет что-то вроде морского боя на консоле. В процессе написания я ее запускал, чтобы проверить некоторые элементы, и она прекрасно работала. Но вот дойдя до определенного момента появилось вот что(см. скриншот). Идей почему это происходит и как с этим бороться...
C++ Уже 2 года не могу установить c++ Ребят нужно работать на 2010 версии, но при установке на этапе VC 9.0 во всех версиях возникает или ошибка или до бесконечности зависает установка, мне пришла в голову мысль - можно установить на нетбуке и с него на комп скинуть, и вот я перенёс абсолютно все файлы c++ и тут ошибка: Отстутсвует один или несколько файлов, переустановите программу. Моя ошибка очень часто встречается не только у... подробнее

Показать сообщение отдельно
Убежденный
Системный программист
 Аватар для Убежденный
14676 / 6622 / 1049
Регистрация: 02.05.2013
Сообщений: 10,903
Завершенные тесты: 1
03.09.2013, 13:46     Виртуальность и наследование
Цитата Сообщение от Kaskera Посмотреть сообщение
Error 1 error C2440: 'type cast' : cannot convert from 'void (__thiscall Super::* )(void) const' to 'PFUNC'
http://ideone.com/CisVko

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#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 '->'?
    
    typedef void (*PFUNC)(void *);    
    PFUNC pFunc = (PFUNC)&Super::print;
    pFunc(obj);
    
    delete obj;
}
virtual void Super::print ( ) const
Цитата Сообщение от ForEveR Посмотреть сообщение
Убежденный, Ой-ой-ой. Поправьте, если я ошибаюсь, но данный код вполне себе может привести к UB, ибо нигде не гарантируется, что sizeof(function-pointer) == sizeof(pointer to member-function) да и вообще не факт что скомпилируется.
Согласен. Просто не знаю другого способа, удовлетворяющего условию задачи.
А про "operator ->*" - это Вы ловко подметили ;)
 
Текущее время: 00:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru