2
类型转换操作我有一个这样的转换:C++重载为指针
Class1 *p1;
Class2 *p2 = new Class2();
p1 = (Class1 *) p2;
我可以覆盖上面的类型转换操作符返回一个自定义的Class1对象的指针? 如果是的话如何?
编辑:我确切的问题是,我有这样的代码:
if (*$1 == ArrayType(AnyType()))
{
$$ = ((ArrayType *) $1)->getElementsType();
}
==操作符重载所以1 $可能是anytype类型的*。
这是一个Bison/Flex项目。 yylval必须是一个指向类的指针,而不是它的一个实例。我已经定义了一个带有子类ArrayType和AnyType的Type类(它应该与任何类型(子类)相等)。所以有时我有一个指向AnyType的指针,并且必须从它创建一个ArrayType指针。 – 2010-09-19 15:48:30