假设有一个基类 B 和派生类 D1、D2、D3。
B* b;
D1 d1;
D2 d2;
D2 *pd2 = &d2;
D3 d3;
//more code placing valid data on variables
可以在代码中说b = &d1
或b = pd2
某处。现在是否可以在没有动态转换的情况下将 b 与指向 d1、d2 和 d3 的指针进行比较以获得指针的相等性?也就是说,我可以这样做:
if (b == &d1)
{
//do something
}
?
假设有一个基类 B 和派生类 D1、D2、D3。
B* b;
D1 d1;
D2 d2;
D2 *pd2 = &d2;
D3 d3;
//more code placing valid data on variables
可以在代码中说b = &d1
或b = pd2
某处。现在是否可以在没有动态转换的情况下将 b 与指向 d1、d2 和 d3 的指针进行比较以获得指针的相等性?也就是说,我可以这样做:
if (b == &d1)
{
//do something
}
?