多重継承または仮想継承を使用していないと仮定すると、C++ 標準は、aDerived*を aに変換すると、Base*両方のポインターがまったく同じ値になることを保証しますか? たとえば、次のコードは、および/または仮想関数がsuccess()ある場合でも、常に を呼び出しますか?DerivedBase
Derived* d = new Derived;
Base* b = d;
if (((void*)b) == ((void*)d))
success();
else
failure();