ในขณะที่อ่านหนังสือ C ++ Primer ฉันเจอข้อความนี้: "จำนวนองค์ประกอบในอาเรย์เป็นส่วนหนึ่งของประเภทอาเรย์" ดังนั้นฉันต้องการค้นหาโดยใช้รหัสต่อไปนี้:
#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;
}
และน่าสนใจที่ผลลัพธ์ของ typeid ในสองอาร์เรย์แสดงว่ามันแตกต่างกัน
- เบื้องหลังเกิดอะไรขึ้น
- เหตุใดจึงจำเป็นต้องให้อาร์เรย์มีชนิดที่มีขนาด เป็นเพราะขนาดไม่ควรเปลี่ยนแปลงหรือไม่
- สิ่งนี้จะส่งผลกระทบต่อการเปรียบเทียบอาร์เรย์?
เพียงแค่ต้องการที่จะสามารถเข้าใจแนวคิดอย่างลึกซึ้ง