класса)
- Base (объявлен внутри, как интерфейс)
- Derived (унаследован от Base), лежит в виде поля
могу ли я каким-то образом получиться указатель на член класса типа Derived через указатель на Base?
static_cast
Можно кодом, пожалуйста?
Можно почитать хоть немного про язык?
можно, если при этом есть объект Derived, и указатель на Base - это указатель на подобъект. через приведение указателя на базовый класса к указателю на производный класс: static_cast или через безопасный downcast - dynamic_cast (если есть virtual методы)
Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
Я не понимаю, как это написать. Мне нужен pointer to member, а не просто указатель на объект дочернего класса. Если вы подскажите, где читать - я прочитаю. Скажите только, где.
ты просто кастишься к объекту содержащему твой член, а дальше делаешь обращение через -> к своему члену
если речь о касте Derived Container::* к Base Container::* или наоборот, то они технически невозможны
Да,это оно и есть Спасибо
множества возможных значений не хватит, чтобы выполнить такое преобразование
без кода ничего не понятно.
https://godbolt.org/z/7qrhxj4rj очень упрощённо
Обсуждают сегодня