Como passar a matriz por referência em C ++

Como passar a matriz por referência em C ++
C ++ é uma forte linguagem de programação que oferece aos programadores a capacidade de criar programas sofisticados e eficazes. A habilidade de passa matrizes por referência é uma característica fundamental do C ++, permitindo programação mais eficaz e adaptável.

Uma cópia de uma matriz não é produzida quando é Passado por referência. Em vez disso, a função ou método recebe uma referência à matriz inicial. Como resultado, quaisquer modificações feitas na matriz na função ou método terão um impacto na matriz inicial.

Pode demorar um pouco para passar uma matriz por valor, pois faz uma duplicata da matriz original na memória, especialmente ao trabalhar com enormes matrizes. No entanto, Passando uma matriz por referência é mais eficaz, pois simplesmente passa a localização da memória da matriz original.

O argumento da função deve ser especificado como uma variável de referência usando o '&'Símbolo para Passe uma matriz por referência em C++. Isso elimina o requisito para que a função retorne um valor, pois qualquer modificação feita na matriz dentro da função também será aplicada à matriz inicial.

#incluir
void modify_array (int (& arr) [3])
arr [0] = 5;
arr [1] = 6;
arr [2] = 7;

int main ()
int arr [3] = 1, 2, 3;
modify_array (arr);
std :: cout << "Modified array: ";
para (int i = 0; i < 3; i++)
std :: cout << arr[i] << " ";

std :: cout << std::endl;
retornar 0;

No código acima, o argumento para o modify_array () A função é uma referência a uma variedade de números. O modify_array () Método altera os itens da matriz, dando -lhes novos valores. Nesse caso, 5, 6 e 7 são definidos como os três primeiros itens da matriz, de acordo.

Uma matriz de três números inteiros é definida e inicializada com os números 1, 2 e 3 na função principal. Esta matriz é então enviada como uma entrada para o modify_array () método. O modify_array () Método altera os membros do original matriz desde que a matriz é passada por referência.

Saída

Benefícios de passar uma matriz por referência

1: Eficiência

A eficiência é uma vantagem de Passando matrizes por referência. Uma duplicata da matriz completa é criada quando uma matriz é passada por valor. Isso pode consumir muita memória e desacelerar o software. Quando as matrizes são passadas por referência, o programa usa menos memória e é mais rápido.

2: Adaptabilidade

Flexibilidade é outra vantagem de Passando matrizes por referência. Quando uma matriz é Passado por referência, A função ou método pode adicionar, remover ou alterar os elementos da matriz. Como a função ou método pode ser usada para realizar várias atividades com base nos requisitos do programa, isso oferece à programação flexibilidade adicional.

Existem alguns fatores importantes a serem considerados ao fornecer uma matriz por referência em c++. Primeiro, o '&'O símbolo não é necessário quando Passando um nome de matriz como uma referência argumento, já que um nome de matriz é efetivamente um ponteiro para o primeiro elemento da matriz. Segundo, o tamanho da matriz deve ser dado ao declarar um parâmetro de referência para uma matriz. Por fim, é arriscado e aconselhável evitar alterar o tamanho de uma matriz dentro de uma função.

Conclusão

Uma característica importante do C ++ que permite uma programação mais eficaz e adaptável é a capacidade de passa matrizes por referência. A memória é conservada e o aplicativo é executado mais rapidamente, utilizando a referência à matriz original. Além disso, a opção de alterar a matriz inicial oferece liberdade de programação adicional. Para garantir a execução apropriada, é crucial usar a sintaxe correta e declarar claramente o tamanho da matriz na função ou a assinatura do método.