Apakah std::array dalam C++?

Apakah Std Array Dalam C



C++ menyediakan pelbagai struktur data untuk menyimpan dan memanipulasi koleksi elemen. Satu struktur data tersebut ialah std::array , yang telah diperkenalkan dalam perpustakaan standard C++11. Melalui artikel ini, anda akan belajar tentang std::array, sintaksnya, contoh, dan kelebihannya dalam C++.

Apakah std::array dalam C++

Dalam C++, bekas yang dikenali sebagai std::array digunakan untuk memegang nombor tetap item jenis data yang sama. The std::array bekas menyediakan alternatif kepada tatasusunan gaya C kerana ia lebih selamat, lebih mudah digunakan dan mempunyai prestasi yang lebih baik.

Kelas, yang merupakan komponen perpustakaan standard C++, menawarkan pendekatan yang praktikal dan berkesan untuk menyimpan dan mengakses elemen dengan jenis data yang sama. Kerana saiz std::array diketahui pada masa penyusunan, overhed masa jalan penskalaan dinamik dikurangkan. Saiz tatasusunan ditetapkan oleh parameter templat dan item bagi std::array disimpan dalam ingatan bersebelahan.







Isytiharkan std::array dalam C++

Anda boleh mengisytiharkan std::array seperti:



std :: tatasusunan < int , 4 > arr ;

Sintaks di atas mengisytiharkan tatasusunan bernama arr dengan saiz tetap 4 elemen, di mana setiap elemen adalah jenis int.



Contoh std::array

Contoh 1: Berikut adalah contoh mudah untuk permulaan a std::array dalam C++:





#include

#include

int utama ( ) {

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

untuk ( int i = 0 ; i < arr. saiz ( ) ; i ++ ) {

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

}

std :: cout << std :: endl ;

kembali 0 ;

}

Pengeluaran



Contoh 2: Anda juga boleh menggunakan std::array untuk mengakses elemen dalam tatasusunan. Kod diberikan di bawah:

#include

#include

int utama ( ) {

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

std :: cout << 'Elemen pertama ialah' << arr [ 0 ] << std :: endl ;

std :: cout << 'Elemen kedua ialah' << arr. di ( 1 ) << std :: endl ;

std :: cout << 'Elemen ketiga ialah' << arr. belakang ( ) << std :: endl ;

kembali 0 ;

}

Pengeluaran

Contoh 3: Contoh berikut menunjukkan mencetak elemen daripada tatasusunan pada kedudukan tertentu menggunakan std::array dalam C++.

#include

#include

int utama ( )

{

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

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

kembali 0 ;

}

Pengeluaran

Kelebihan std::array dalam C++

Tidak seperti tatasusunan tradisional dalam C++, std::array menawarkan pelbagai ciri.

1: Sintaks Intuitif

std::array mempunyai sintaks yang lebih intuitif untuk pemula dan boleh dimulakan menggunakan senarai pemula. Ini menyediakan cara yang lebih ringkas dan boleh dibaca untuk memulakan tatasusunan.

2: Lulus sebagai Hujah

std::array boleh dihantar sebagai hujah kepada fungsi, dan mungkin untuk mengembalikannya daripada fungsi juga.

3: Pengurusan Memori

Salah satu faedah utama menggunakan std::array ialah ia menyediakan pengurusan memori yang mudah dan cekap. Ini bermakna bahawa tidak ada keperluan untuk peruntukan memori manual atau deallocation.

4: Semakan Terikat Automatik

Hakikat bahawa std::array menawarkan pemeriksaan sempadan automatik ke atas tatasusunan gaya C adalah salah satu kelebihan utamanya. Ini bermakna jika program cuba mengakses elemen di luar julat yang ditentukan tatasusunan, pengkompil akan menghasilkan ralat. Limpahan penimbal, kesalahan pembahagian dan kebocoran memori hanyalah beberapa daripada isu pengaturcaraan yang kerap yang boleh dielakkan oleh pemeriksaan terikat.

5: Menyediakan Fungsi Berguna

std::array menawarkan beberapa fungsi berguna, seperti iterator, size(), front(), back(), fill(), dan at(), yang merupakan satu lagi kelebihan. Fungsi ini memudahkan untuk memanipulasi elemen tatasusunan tanpa memerlukan kod yang kompleks dan mudah ralat. Iterator, sebagai contoh, memudahkan untuk menavigasi antara elemen tatasusunan, dan kaedah fill() membolehkan anda memberikan satu nilai kepada keseluruhan set elemen tatasusunan.

Kesimpulan

Dalam C++, the std::array kelas menawarkan cara praktikal untuk bekerja dengan tatasusunan bersaiz tetap, bersama-sama dengan beberapa fungsi berguna dan kelebihan keselamatan jenis dan julat. Untuk permulaan dan semakan sempadan, ia menyediakan sintaks yang lebih jelas dan mudah difahami, yang boleh membantu mengelakkan banyak kesilapan pengaturcaraan biasa. Untuk kebanyakan situasi apabila tatasusunan bersaiz tetap mesti digunakan, penggunaan std::array dinasihatkan kerana ia menyediakan kaedah yang lebih terkini dan selamat untuk memanipulasinya.