0Pricing
C++ Academy · Pelajaran

std::array Berukuran Tetap

Pengganti C-array yang aman

std::array Berukuran Tetap adalah pelajaran C++ Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar C++ Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus C++ Academy mencakup 4 pelajaran total.

Larik C yang Aman

std::array<T, N> adalah larik berukuran tetap yang mengetahui ukurannya sendiri dan berperilaku seperti wadah yang lengkap. Sertakan <array>.

#include <iostream>
#include <array>
int main() {
    std::array<int, 3> a = {1, 2, 3};
    std::cout << a[0] << " " << a.size() << "\n";
}

Mengetahui Ukurannya

Berbeda dari array mentah yang berubah menjadi penunjuk, std::array selalu melaporkan panjangnya melalui size().

#include <iostream>
#include <array>
int main() {
    std::array<double, 4> a{};
    std::cout << a.size() << "\n"; // 4
}

Perulangan Berbasis Rentang

Karena merupakan kontainer yang sesungguhnya, Anda dapat melakukan iterasi dengan perulangan berbasis rentang.

#include <iostream>
#include <array>
int main() {
    std::array<int, 3> a = {10, 20, 30};
    for (int x : a) std::cout << x << " ";
    std::cout << "\n";
}

Pemeriksaan Batas dengan at()

at(i) melempar std::out_of_range untuk indeks yang tidak valid, sedangkan operator[] tidak melakukan pemeriksaan; pilihlah berdasarkan kebutuhan keamanan.

#include <iostream>
#include <array>
int main() {
    std::array<int, 2> a = {1, 2};
    try { a.at(5); }
    catch (const std::out_of_range&) { std::cout << "out of range\n"; }
}

front, back, dan data

Akses praktis: front() dan back() mengembalikan elemen pertama dan terakhir; data() memberikan penunjuk mentah untuk API C.

#include <iostream>
#include <array>
int main() {
    std::array<int, 3> a = {7, 8, 9};
    std::cout << a.front() << " " << a.back() << "\n";
}

Dapat Disalin Berdasarkan Nilai

std::array dapat disalin dengan mudah menggunakan =, termasuk menyalin setiap elemennya, berbeda dari array mentah yang berubah menjadi penunjuk.

#include <iostream>
#include <array>
int main() {
    std::array<int, 3> a = {1, 2, 3};
    std::array<int, 3> b = a; // full copy
    b[0] = 99;
    std::cout << a[0] << " " << b[0] << "\n"; // 1 99
}

Kompatibel dengan Algoritme

Algoritme standar menerima iterator std::array; di sini kita mengurutkannya.

#include <iostream>
#include <array>
#include <algorithm>
int main() {
    std::array<int, 4> a = {4, 1, 3, 2};
    std::sort(a.begin(), a.end());
    for (int x : a) std::cout << x << " ";
    std::cout << "\n";
}

Mengisi dan Membandingkan

fill(value) menetapkan setiap elemen; std::array juga mendukung perbandingan setiap elemen dengan ==.

#include <iostream>
#include <array>
int main() {
    std::array<int, 3> a{};
    a.fill(5);
    std::array<int, 3> b = {5, 5, 5};
    std::cout << (a == b) << "\n"; // 1
}

Ukuran Merupakan Bagian dari Tipe

Panjang N tertanam dalam tipe, sehingga fungsi yang menerima std::array<int,3> tidak akan menerima array berukuran 4. Di sinilah std::span akan membantu nanti.

Alokasi di Tumpukan

std::array menyimpan elemennya secara inline (biasanya di tumpukan), tanpa alokasi heap, sehingga cepat dan mudah diprediksi untuk data berukuran tetap.

Array vs Vektor

Gunakan std::array jika ukurannya diketahui saat kompilasi dan bersifat tetap. Gunakan std::vector jika ukurannya dapat berubah saat program berjalan.

Uji Cepat

Uji pemahaman Anda tentang std::array.

Ringkasan

Anda telah mempelajari std::array:

  • Kontainer berukuran tetap yang mengetahui ukurannya, tanpa alokasi heap.
  • at() memeriksa batas; [] tidak.
  • Dapat disalin, dibandingkan, dan digunakan dengan algoritme.
  • Ukuran N merupakan bagian dari tipe.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “std::array Berukuran Tetap” gratis?

Ya — teks lengkap “std::array Berukuran Tetap” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus C++ Academy, upgrade ke CoddyKit PRO. Kursus C++ Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “std::array Berukuran Tetap”?

Pengganti C-array yang aman Kamu berlatih C++ Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai C++ Academy?

Tidak diperlukan pengalaman sebelumnya. C++ Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “std::array Berukuran Tetap” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran C++ Academy ini?

Ya. Setiap pelajaran C++ Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. std::array Berukuran Tetap
  2. Dasar-Dasar std::span
  3. Meneruskan Span ke Fungsi
  4. Batas dan Subspan
← Kembali ke C++ Academy