Programar em C++/Classes: diferenças entre revisões

[edição verificada][revisão pendente]
Conteúdo apagado Conteúdo adicionado
m Foram revertidas as edições de Kelvinsteiner (disc) para a última revisão de Abacaxi
Apenas para facilitar a leitura, havia uma pequena falha gramática. Espero que tenha ajudado aos leitores.
Linha 630:
</source>
 
Este programa contém um bug sério e morre com uma exceção quando é executado. O problema é que o construtor que está sendo usado é para criar um objeto “manager" , mas ele copia o endereço no ponteiro _name em "manager".
 
Nos temos 2 pointers ambos contendo o mesmo endereço. Imagine que agora um novo empregado é contratado. quando o nome for atualizado, não apenas iremos alterar o nome do empregado mas também do gerente. Finalmente, quando os objetos deixarem de ser usados e o destrutor da classe fizer a liberação de espaço na memória tentará liberar duas vezes para o mesmo endereço, provocando um erro no sistema de alocação dinâmica de memória, o que forçará o sistema operacional a eliminar o programa da memória.