如何将指针转换为引用?

ula*_*ade 0 c++ pointers reference type-conversion

我有一个功能:

bool IntersectBoxBox(IShape3D* a, IShape3D* b)
    {
        Box* boxA = (Box*)a;
        Box* boxB = (Box)b;

        return(boxA->Intersects(boxB));
    }
Run Code Online (Sandbox Code Playgroud)

当2个IShape3D被确定为a box和a box类型(有IShape3D->GetType()方法)时调用它.

无论如何,问题是Intersects需要一个Box& box,所以我无法传递一个指针.是否有一种廉价的方式来转换参数?

Oli*_*rth 10

只需取消引用你的指针(*boxB).