Jump to content
Fórum Script Brasil
  • 0

Operador New


Andersonjb

Question

E ai, pessoal, beleza? Bem, eu sei que o operador new e um operador de alocação dinamica, certo? MAs eu não entendi certas coisas, como: ele cria uma nova varivel fixa no meio do sistema ou a nova variavel e apenas temporaria? E eu tb posso criar funçoes do nada com o operador new? E porque em certos codigos os programdores preferem inicializar uma variavel com o new do que declarando no inicio do programa?

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Bem, eu sei que o operador new e um operador de alocação dinamica, certo? MAs eu não entendi certas coisas, como: ele cria uma nova varivel fixa no meio do sistema ou a nova variavel e apenas temporaria?

Todas as variáveis são temporárias, não? Afinal de contas, quando o bloco de memória ocupado por ela parar de ser referenciado o mesmo estará disponível novamente para utilização.

E eu tb posso criar funçoes do nada com o operador new?

Nunca vi o operador new utilizado para isso.

E porque em certos codigos os programdores preferem inicializar uma variavel com o new do que declarando no inicio do programa?

Não é uma questão de preferência, mas sim de que esta é maneira de se instanciar objetos. Se você só declarar você não estará realmente criando uma instância dele.

Abraços,

Graymalkin

Link to comment
Share on other sites

  • 0

Se eu tenho uma classe chamada Cliente e quero criar dois objetos desse tipo, necessariamente eu tenho que fazer:

Cliente *c1, *c2;

c1 = new Cliente();
c2 = new Cliente();

Lembra que "new" é um operador? Então, o que ele faz é justamente invocar o *método construtor* da classe para gerar um *novo objeto*. Você vai utilizar new sempre que for criar um novo objeto (é ele que faz o método construtor ser chamado). Até o momento do new, c1 e c2 são nulos (NULL). Sacou? wink.gif

Abraços,

Graymalkin

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      651.8k
×
×
  • Create New...