Tanto para las matrices de C ++ como para las matrices de estilo C, en C ++ de hoy, la forma más conveniente es la función genérica std :: size:
#include
#include
#include
int main ()
{
std :: array a1;
int a2 [12];
std :: cout << "Tamaño de matriz C ++:" << std :: size (a1) << '\ n'
<< "Tamaño de matriz C:" << std :: size (a2) << '\ n';
}
demostración en vivo: [Wandbox] 三 へ (へ՞ ਊ՞) へ ハ ッ ハ ッ
- ¿Podemos crear una matriz sin especificar un tamaño?
- ¿Qué es el tipo de selección?
- En algoritmos, ¿cuál es el límite superior e inferior?
- ¿Codeforces tiene un problema de ética?
- ¿Cuáles son los requisitos previos para la introducción del algoritmo antes de tomarlo?
Dado que las matrices C y C ++ mantienen su tamaño como parte de su tipo, es posible extraerlo utilizando la especialización de plantilla, sin llamar a ninguna función (de hecho, así es como funciona std :: size para matrices C:
#include
#include
plantilla
demostración nula (T (&) [N]) {
std :: cout << "Tamaño de matriz C:" << N << '\ n';
}
plantilla
demostración vacía (const std :: array &) {
std :: cout << "Tamaño de matriz C ++:" << N << '\ n';
}
int main ()
{
std :: array a1;
int a2 [12];
demo (a1);
demo (a2);
}
demostración en vivo: [Wandbox] 三 へ (へ՞ ਊ՞) へ ハ ッ ハ ッ
Hay otras formas, por supuesto, como el uso de std :: extensión para las matrices C (es particularmente útil con matrices multidimensionales)