Ada std::array<T, N>::size()
, tapi ini non-statis, jadi itu membutuhkan contoh std::array
. Apakah ada cara untuk mendapatkan nilai yang dikembalikan (yang merupakan N
dari std::array<T, N>
) tanpa harus membuat turunan dari array? Untuk array normal, saya bisa menggunakan sizeof
, tetapi saya melihat tidak ada jaminan itu sizeof(std::array<T, N>) == N * sizeof(T)
benar.
@ShadowRanger Karena
—
NathanOliver
sizeof(std::array<T, N>) == N * sizeof(T)
tidak harus benar.
Karena array dapat diketikkan di tempat lain atau diteruskan sebagai argumen ke templat.
—
Dragonroot
Jika Anda ingin tahu jumlah elemen, gunakan saja
—
JohnFilleau
N
.
@dragonroot Apa gunanya semua ini? Jika Anda sudah
—
Remy Lebeau
N
mulai dengan, tidak perlu melalui semua ini untuk mendapatkan N
secara tidak langsung, atau untuk memvalidasi itu N==N
. Apa use case aktual yang Anda coba selesaikan?
N
, mengapa Anda perlu memintaarray
untuk memperbanyakinya untuk Anda?