Шрифт:
Что нам делать? Во-первых, мы должны работать с указателями (или ссылками), а не с самими объектами, поэтому следует попытаться использовать классы
Однако мы по-прежнему не можем конвертировать класс
• Мы не хотим модифицировать наш объект класса
• Все массивы указателей имеют одну и ту же схему (независимо от объектов, на которые они ссылаются), поэтому нас не должна волновать проблема, упомянутая в разделе 25.4.2.
Нет никаких логических препятствий интерпретировать данный массив указателей типа
Теперь мы работаем с указателями, поэтому должны предусмотреть проверку нулевого показателя. Для того чтобы гарантировать, что функция
Далее, мы должны устранить главную проблему: как выразить идею, что объект класса
• в нечто подобное объекту класса
• но только если объект класса
Это можно сделать, добавив в класс
Это похоже на головоломку, но все же перечислим ее основные моменты.
• Оператор приводит каждый тип