Czytając książkę C ++ Primer natrafiłem na następujące stwierdzenie: „Liczba elementów w tablicy jest częścią typu tablicy”. Więc chciałem dowiedzieć się, używając następującego kodu:
#include<iostream>
int main()
{
char Array1[]{'H', 'e', 'l', 'p'};
char Array2[]{'P', 'l', 'e', 'a', 's', 'e'};
std::cout<<typeid(Array1).name()<<std::endl; //prints A4_c
std::cout<<typeid(Array2).name()<<std::endl; //prints A6_c
return 0;
}
Co ciekawe, wynik pisma na dwóch tablicach pokazał, że są one jakoś inne.
- Co dzieje się za kulisami?
- Dlaczego konieczne jest, aby tablice miały typ uwzględniający ich rozmiar? Czy tylko dlatego, że jego rozmiar nie powinien się zmienić?
- Jak wpłynie to na porównywanie tablic?
Po prostu chcę być w stanie głęboko zrozumieć tę koncepcję.