У меня есть преобразование, подобное этому:
Class1 *p1;
Class2 *p2 = new Class2();
p1 = (Class1 *) p2;
Могу ли я переопределить приведенный выше оператор typecast для возврата пользовательского указателя объекта Class1?
Если да, то как?
РЕДАКТИРОВАТЬ: Моя точная проблема в том, что у меня есть код, подобный этому:
if (*$1 == ArrayType(AnyType()))
{
$$ = ((ArrayType *) $1)->getElementsType();
}
Оператор == перегружен, поэтому $ 1 может иметь тип AnyType *.