ข้อผิดพลาด“ องค์ประกอบเริ่มต้นไม่คงที่” เมื่อพยายามเริ่มต้นตัวแปรด้วย const
ฉันได้รับข้อผิดพลาดในบรรทัดที่ 6 (เริ่มต้น my_foo เป็น foo_init) ของโปรแกรมต่อไปนี้และฉันไม่แน่ใจว่าฉันเข้าใจว่าทำไม typedef struct foo_t { int a, b, c; } foo_t; const foo_t foo_init = { 1, 2, 3 }; foo_t my_foo = foo_init; int main() { return 0; } โปรดทราบว่านี่เป็นเวอร์ชันที่เรียบง่ายของโครงการหลายไฟล์ขนาดใหญ่ที่ฉันกำลังทำงานอยู่ เป้าหมายคือการมีค่าคงที่เดียวในไฟล์อ็อบเจ็กต์ที่หลายไฟล์สามารถใช้เพื่อเริ่มต้นโครงสร้างสถานะ เนื่องจากเป็นเป้าหมายแบบฝังที่มีทรัพยากร จำกัด และโครงสร้างไม่เล็กฉันจึงไม่ต้องการสำเนาหลายชุด ฉันไม่ต้องการใช้: #define foo_init { 1, 2, 3 } ฉันกำลังพยายามเขียนโค้ดแบบพกพาด้วยดังนั้นฉันจึงต้องการโซลูชันที่ใช้ได้กับ …