"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 > Como passar uma matriz por referência em C ++?

Como passar uma matriz por referência em C ++?

Postado em 2025-03-13
Navegar:261

How to Pass an Array by Reference in C  ?

Passando uma matriz por referência

em c, passar uma matriz por referência nos permite modificar a matriz original que foi passada para a função. Quando usamos o sinal de AMPERSand (&) antes de um tipo de matriz, criamos uma referência a essa matriz. { } int main () { int a [100]; foo (a); }

Neste exemplo, a função Foo aceita uma referência a uma matriz de 100 números inteiros. Os colchetes após o MyArray são necessários para indicar que o parâmetro é uma referência de matriz, não um ponteiro. É uma maneira alternativa de declarar uma referência de matriz. As seguintes declarações são equivalentes:

void foo(int (&myArray)[100])
{
}

int main()
{
    int a[100];
    foo(a);
}
int (& myarray) [100]

int *myarray

int myArray []
  • Quando passa um prato de referência, o componente tratar o componente, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador, o complicador
  • Isso significa que quaisquer alterações feitas na matriz na função também serão refletidas na matriz original. Se tentássemos passar uma matriz com um tamanho diferente da função Foo, isso resultaria em um erro de tempo de compilação.
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