Um objeto alocado por heap pode ser const em C ++?
Em C ++, um objeto alocado por pilha pode ser declaradoconst
:
const Class object;
Depois disso, tentar chamar um método não-constante em tal objeto é um comportamento indefinido:
const_cast<Class*>( &object )->NonConstMethod(); //UB
Um objeto alocado para heap pode serconst
com as mesmas conseqüências? Quero dizer, é possível que o seguinte:
const Class* object = new Class();
const_cast<Class*>( object )->NonConstMethod(); // can this be UB?
também é um comportamento indefinido?