От: | lst | ||
Дата: | 06.10.04 04:09 | ||
Оценка: |
F>struct B {};
F>struct D : B {};
F>int main()
F>{
F> B b;
F> B* pb1 = reinterpret_cast<B*>( reinterpret_cast<D*>( &b ) ); // pb1 == &b
F> B* pb2 = static_cast <B*>( static_cast <D*>( &b ) ); // значение pb2 неопределено согласно 5.2.9/1 :crash:
F>}
F>
[skipped]
If the rvalue of type "pointer to cv1 B" points to the B that is actually a sub-object of an object of type D, the resulting pointer points to the enclosing object of type D.
[skipped]