Excluindo um ponteiro para const (T const *)
Eu tenho uma pergunta básica sobre os ponteiros const. Não tenho permissão para chamar nenhuma função membro que não seja const usando um ponteiro const. No entanto, estou autorizado a fazer isso em um ponteiro const:
delete p;
Isto chamará o destruidor da classe que, em essência, é um 'método' não-const. Por que isso é permitido? É apenas para apoiar isso:
delete this;
Ou tem alguma outra razão