Trong khi đọc cuốn sách C ++ Primer, tôi đã bắt gặp câu nói này: "Số phần tử trong một mảng là một phần của kiểu của mảng." Vì vậy, tôi muốn tìm hiểu bằng cách sử dụng mã sau đây:
#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;
}
Và điều thú vị là kết quả của typeid trên hai mảng cho thấy chúng khác nhau.
- Điều gì đang xảy ra đằng sau hậu trường?
- Tại sao cần phải có một mảng bao gồm kích thước của nó? Có phải chỉ vì kích thước của nó không nên thay đổi?
- Làm thế nào điều này sẽ ảnh hưởng đến việc so sánh các mảng?
Chỉ muốn có thể hiểu sâu sắc khái niệm.