Ir ao conteúdo
  • Cadastre-se

Pra quê serve o "->" no c#?


icarodantas123

Posts recomendados

Em C/C++ se chama "Seleção de elemento por ponteiro", e serve para acessar uma variável membro de uma estrutura/Classe(C++)/União, quando essa for criada dinamicamente ou passada por referencia(ponteiros).

Na pratica para acessar um membro de uma estrutura por exemplo, teríamos que usar aritmética de ponteiros, algo como *estrutura.membro, porém o operador Seleção de elemento por identificador(ponto) tem preferência sobre o operador Desreferência(Asterisco). Então nesse caso das prioridades deveríamos ressaltar a necessidade de que o operador de Desreferência tenha prioridade sobre o operador de Seleção de elemento por identificador, para isso usamos outro operador que é o parêntesis(), esse não sei seu nome, o importante é saber que o que esta dentro tem prioridade sobre o que está fora. No caso *estrutura.membro, o ".membro" seria processado antes que "*estrutura", então deveríamos fazer "(*estrutura)" para que tenha prioridade sobre ".membro", ficando finalmente como (*estrutura).membro. Essa notação é um pouco complexa de se fazer pois ja vão 3 operadores( *, . e () ), por isso existe ->, para substituir 3 por 1. Seria substituir (*estrutura).membro por estrutura->membro, que é muito mais fácil né.

Como C# é um linguagem baseado em C++ suponho que seja por esse mesmo motivo. Pois se não me engano, em C# se usa new para criar variáveis, em C++ new é o operador que reserva memória dinamicamente, não sei se serve de ajuda mas...

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...