6
void foobar(Base* base)
{
Derived* derived = dynamic_cast<Derived*>(base); // or static_cast
derived->blabla = 0xC0FFEE;
if (base->blabla == 0xC0FFEE)
...
}
在編譯器上使用嚴格別名,是「派生」別名爲「base」嗎?將通過指向其派生類的指針訪問類對象是否會打破嚴格的別名規則?