Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Depois do delete[]


marllos

Pergunta

Bom dia! Minha dúvida é o seguinte: depois da instrução delete[] <variavel array definida dinamicamente> eu posso continuar usando a variável? Parece que até o valor atribuído a variável continua disponível. alguém pode me explicar porque?

No exemplo abaixo, usando o compilador c++ da borland, até o valor da variável fica disponível!

#include <iostream>

using namespace std;

int main(void)

{

int
*b;

b =
new int
[10];

b[2] = 40;

cout << b[2] << endl;

delete
[] b;

cout << b[2];

return
0;

}

Obrigado.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Quando você usa a função new, o sistema aloca um espaço na memória para você usar. Depois que você usa o comando delete aquela alocação passa a ser considerada livre para o sistema, podendo ele utilizá-la para gravar dados que ele queira. Embora o conteúdo ainda esteja lá, mas a alocação não existe mais. Se você continuar utilizando pode ocasionar um erro no sistema pois você pode modificar um conteúdo dele.

Portanto não se deve utilizar uma alocação liberada pelo delete.

Abraço.

Editado por RonaldoRG
Link para o comentário
Compartilhar em outros sites

  • 0
Quando você usa a função new, o sistema aloca um espaço na memória para você usar. Depois que você usa o comando delete aquela alocação passa a ser considerada livre para o sistema, podendo ele utilizá-la para gravar dados que ele queira. Embora o conteúdo ainda esteja lá, mas a alocação não existe mais. Se você continuar utilizando pode ocasionar um erro no sistema pois você pode modificar um conteúdo dele.

Portanto não se deve utilizar uma alocação liberada pelo delete.

Abraço.

Entendi, muito obrigado.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...