Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Memulakan `std::array` 2D dengan betul dalam C Menggunakan Braces?

Bagaimana untuk Memulakan `std::array` 2D dengan betul dalam C Menggunakan Braces?

Linda Hamilton
Lepaskan: 2024-11-24 06:22:24
asal
975 orang telah melayarinya

How to Correctly Initialize a 2D `std::array` in C   Using Braces?

Pemulaan 2D std::array dengan Braces

Semasa bekerja dengan C , memulakan 2D std::array menggunakan pendakap boleh mencabar . Coretan kod berikut menggambarkan isu:

std::array<std::array<int, 3>, 2> a {
    {1, 2, 3},
    {4, 5, 6}
};
Salin selepas log masuk

Pendekatan ini gagal dihimpun, dengan ralat pengkompil menunjukkan terlalu banyak pemula untuk std::array, 2u>. Untuk memahami sebab ini berlaku, adalah penting untuk mengetahui pelaksanaan asas std::array.

std::array Internals

std::array ialah agregat yang merangkumi tatasusunan gaya C. Oleh itu, untuk memulakannya dengan betul, ia memerlukan pendakap luar untuk kelas itu sendiri dan pendakap dalam untuk ahli tatasusunan C:

std::array<int, 3> a1 = { { 1, 2, 3 } };
Salin selepas log masuk

Melanjutkan logik ini kepada tatasusunan 2D menghasilkan pemulaan yang sah berikut:

std::array<std::array<int, 3>, 2> a2 { { { {1, 2, 3} }, { { 4, 5, 6} } } };
Salin selepas log masuk

Dalam contoh ini:

  • "{ { {1, 2, 3} }, { { 4, 5, 6} } }" ialah pendakap kelas, melampirkan pemulaan tatasusunan 2D.
  • "{{1, 2, 3}, {4, 5, 6}} " ialah pendakap untuk tatasusunan gaya C dalaman, memulakan setiap baris tatasusunan 2D.

Atas ialah kandungan terperinci Bagaimana untuk Memulakan `std::array` 2D dengan betul dalam C Menggunakan Braces?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan