"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Quais são as diferentes maneiras pelas quais o operador E comercial (&) é usado em C++?

Quais são as diferentes maneiras pelas quais o operador E comercial (&) é usado em C++?

Publicado em 2024-12-22
Navegar:868

What are the different ways the ampersand operator (&) is used in C  ?

Como o E comercial (&) funciona em C

Compreendendo o operador E comercial

O & operador em C serve a vários propósitos, incluindo:

  • Pegar o endereço de uma variável: &x retorna o endereço da memória da variável x.
  • Passando argumentos por referência: void foo(CDummy& x); passa a variável x para a função foo por referência, permitindo que modificações feitas dentro de foo sejam refletidas na variável original.
  • Declarando variáveis ​​de referência: int& r = k; cria uma variável de referência r que dá um apelido a uma variável existente k. Quaisquer alterações feitas em r afetarão diretamente k.

No contexto do código fornecido

O snippet de código que você forneceu demonstra o uso do e comercial para verificar para igualdade entre um ponteiro (b) e uma variável de referência (a). Esta comparação é válida porque uma referência é convertida implicitamente em um ponteiro quando necessário. O operador & no lado esquerdo de &param == this é desnecessário e confuso. A comparação correta é simplesmente param == this.

Em resumo, o operador & em C fornece uma maneira versátil de trabalhar com variáveis, permitindo que você acesse seus endereços de memória, passe-os por referência e crie variáveis ​​de referência esse alias de variáveis ​​existentes.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3