Читаючи книгу букваря C ++, я натрапив на це твердження: "Кількість елементів у масиві є частиною типу масиву". Тому я хотів дізнатися, використовуючи наступний код:
#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;
}
І що цікаво, результат типу на двох масивах показав, що вони якось різні.
- Що відбувається за лаштунками?
- Чому для масиву потрібно мати тип, що включає його розмір? Це лише тому, що його розмір не повинен змінюватися?
- Як це вплине на порівняння масивів?
Просто хочеться мати можливість глибоко зрозуміти концепцію.