O que é std::array em C++?

O Que E Std Array Em C



C++ fornece uma variedade de estruturas de dados para armazenar e manipular coleções de elementos. Uma dessas estruturas de dados é o std::array , que foi introduzido na biblioteca padrão C++11. Através deste artigo, você aprenderá sobre std::array, sua sintaxe, um exemplo e suas vantagens em C++.

O que é std::array em C++

Em C++, um contêiner conhecido como std::array é empregado para manter um número fixo dos mesmos itens de tipo de dados. O std::array container oferece uma alternativa aos arrays estilo C, pois é mais seguro, fácil de usar e tem melhor desempenho.

A classe, que é um componente da biblioteca padrão do C++, oferece uma abordagem prática e eficaz para armazenar e acessar elementos com o mesmo tipo de dados. Porque o tamanho de std::array é conhecido no tempo de compilação, a sobrecarga de tempo de execução do escalonamento dinâmico é reduzida. O tamanho da matriz é definido pelo parâmetro do modelo e os itens do std::array são mantidos em memória contígua.







Declarar std::array em C++

você pode declarar std::array como:



std :: variedade < int , 4 > arr ;

A sintaxe acima declara um array chamado arr com um tamanho fixo de 4 elementos, onde cada elemento é do tipo int.



Exemplo de std::array

Exemplo 1: O seguinte é um exemplo simples para inicializar um std::array em C++:





#include

#include

int principal ( ) {

std :: variedade < int , 4 > arr = { 4 , 6 , 2 , 1 } ;

para ( int eu = 0 ; eu < arr. tamanho ( ) ; eu ++ ) {

std :: cout << arr [ eu ] << ' ' ;

}

std :: cout << std :: fim ;

retornar 0 ;

}

Saída



Exemplo 2: Você também pode usar std::array para acessar os elementos em uma matriz. O código é dado abaixo:

#include

#include

int principal ( ) {

std :: variedade < int , 3 > arr = { 1 , 2 , 3 } ;

std :: cout << 'O primeiro elemento é' << arr [ 0 ] << std :: fim ;

std :: cout << 'O segundo elemento é' << arr. no ( 1 ) << std :: fim ;

std :: cout << 'O terceiro elemento é' << arr. voltar ( ) << std :: fim ;

retornar 0 ;

}

Saída

Exemplo 3: O exemplo a seguir mostra a impressão de um elemento de uma matriz em uma posição específica usando std::array em C++.

#include

#include

int principal ( )

{

std :: variedade < int , 4 > arr = { 4 , 6 , 2 , 1 } ;

std :: cout << arr [ 3 ] << std :: fim ;

retornar 0 ;

}

Saída

Vantagens de std::array em C++

Ao contrário dos arrays tradicionais em C++, std::array oferece uma variedade de recursos.

1: Sintaxe intuitiva

std::array tem uma sintaxe mais intuitiva para inicialização e pode ser inicializado usando uma lista de inicializadores. Isso fornece uma maneira mais concisa e legível de inicializar a matriz.

2: Aprovados como argumentos

std::array podem ser passados ​​como argumentos para funções, e também é possível retorná-los de funções.

3: Gerenciamento de memória

Um dos principais benefícios do uso std::array é que ele fornece gerenciamento de memória fácil e eficiente. Isso significa que não há necessidade de alocação ou desalocação manual de memória.

4: Verificação Automática de Limites

O fato de que std::array oferece verificação automatizada de limites em arrays estilo C é uma de suas principais vantagens. Isso significa que, se o programa tentar acessar um elemento fora do intervalo definido do array, o compilador produzirá um erro. Estouros de buffer, falhas de segmentação e vazamentos de memória são apenas alguns dos problemas de programação frequentes que a verificação de limite pode ajudá-lo a evitar.

5: Fornece funções úteis

std::array oferece várias funções úteis, como iteradores, size(), front(), back(), fill() e at(), que é outra vantagem. Essas funções facilitam a manipulação dos elementos da matriz sem a necessidade de códigos complexos e propensos a erros. Os iteradores, por exemplo, simplificam a navegação entre os elementos do array, e o método fill() permite fornecer um único valor para todo o conjunto de elementos do array.

Conclusão

Em C++, o std::array class oferece uma maneira prática de trabalhar com matrizes de tamanho fixo, junto com algumas funções úteis e as vantagens de segurança de tipo e alcance. Para inicialização e verificação de limites, ele fornece uma sintaxe mais clara e compreensível, o que pode ajudar a evitar muitos erros típicos de programação. Para a maioria das situações em que arrays de tamanho fixo devem ser usados, o uso de std::array é recomendado, pois fornece um método mais atualizado e seguro de manipulá-los.