Diferença entre ponteiro e referência

Autor: Laura McKinney
Data De Criação: 1 Abril 2021
Data De Atualização: 1 Julho 2024
Anonim
Diferença entre ponteiro e referência - Tecnologia
Diferença entre ponteiro e referência - Tecnologia

Contente


O "ponteiro" e a "referência" são usados ​​para apontar ou referenciar uma outra variável. Mas, a diferença básica entre os dois é que uma variável de ponteiro aponta para uma variável cuja localização de memória está armazenada nela. A variável de referência é um alias para uma variável que é atribuída a ela. O gráfico de comparação abaixo explora as outras diferenças entre um ponteiro e uma referência.

  1. Gráfico de comparação
  2. Definição
  3. Principais diferenças
  4. Conclusão

Gráfico de comparação

Base para comparaçãoPonteiroReferência
BasicO ponteiro é o endereço de memória de uma variável.A referência é um alias para uma variável.
DevoluçõesA variável ponteiro retorna o valor localizado no endereço armazenado na variável ponteiro que é precedido pelo sinal do ponteiro *.A variável de referência retorna o endereço da variável precedida pelo sinal de referência &.
Operadores *, ->&
Referência nulaA variável ponteiro pode se referir a NULL.A variável de referência nunca pode se referir a NULL.
Inicialização Um ponteiro não inicializado pode ser criado.Uma referência não inicializada nunca pode ser criada.
Hora da InicializaçãoA variável ponteiro pode ser inicializada em qualquer ponto do tempo no programa.A variável de referência só pode ser inicializada no momento da sua criação.
ReinicializaçãoA variável ponteiro pode ser reinicializada quantas vezes for necessário.A variável de referência nunca pode ser reinicializada novamente no programa.


Definição de Ponteiro

Um "ponteiro" é uma variável que mantém a localização da memória de outra variável. Os operadores usados ​​pela variável ponteiro são * e ->. A declaração da variável ponteiro contém o tipo de dados base seguido pelo sinal '*' e o nome da variável.

tipo * var_name;

Vamos entender o ponteiro com a ajuda de um exemplo.

int a = 4; int * ptr = & a; cout <considerando que, o operador de referência é &.

  • Uma variável de ponteiro, se não possui o endereço de nenhuma variável, aponta para nulo. Por outro lado, uma variável de referência nunca pode se referir a Nulo.
  • Você sempre pode criar uma variável de ponteiro unitializada, mas criamos uma referência quando precisamos de um alias de alguma variável para que você nunca possa criar uma referência unitializada.
  • Você pode reinicializar um ponteiro, mas depois de inicializar, não é possível reinicializá-lo novamente.
  • Você pode criar um ponteiro vazio e inicializá-lo a qualquer momento, mas é necessário inicializar a referência somente ao criar uma referência.
  • Nota:


    Java não suporta ponteiros.

    Conclusão

    O ponteiro e a referência são usados ​​para apontar ou referenciar outra variável. Mas ambos diferem em seu uso e implementação.