Czy obiekt przydzielony do sterty może być stały w C ++?
W C ++ można zadeklarować obiekt przydzielony do stosuconst
:
const Class object;
po tym próba wywołania metody innej niż stała na takim obiekcie to niezdefiniowane zachowanie:
const_cast<Class*>( &object )->NonConstMethod(); //UB
Może być obiektem przydzielonym do stertyconst
z tymi samymi konsekwencjami? Czy to możliwe, że następujące:
const Class* object = new Class();
const_cast<Class*>( object )->NonConstMethod(); // can this be UB?
jest także niezdefiniowane zachowanie?