Добавил:
vvrstcnho
Рад, если кому-то помог
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторные работы С++ (для ИВТ) / Готовые лабы С++ / Лаба7 / Laba 7 (10.2)
.cpp#include <iostream>
using namespace std;
class Base {
protected:
int b1, b2;
public:
virtual void print() = 0;
virtual ~Base() = default; // Добавляем виртуальный деструктор для корректного dynamic_cast
};
class Derived : public Base {
int d;
public:
void print() override { cout << b1 << b2 << d << endl; }
};
int main() {
const void *vp; // Меняем на const void*
const char *str = "test string";
int x = 5, y = 10;
Base *bp;
Derived d, *dp;
// Теперь можно неявно преобразовать const char* в const void*
vp = str;
cout << x / static_cast<double>(y) << static_cast<const char*>(vp) << endl;
bp = static_cast<Base*>(&d);
dp = dynamic_cast<Derived*>(bp);
return 0;
}
Соседние файлы в папке Лаба7
