เอกสารนี้ในส่วนที่2.6 คำนวณรวมมีย่อหน้าต่อไปนี้:
หากบรรทัดนั้นขยายไปยังสตรีมโทเค็นที่เริ่มต้นด้วย <โทเค็นและรวมถึงโทเค็น> โทเค็นที่อยู่ระหว่าง <และตัวแรก> จะรวมกันเพื่อสร้างชื่อไฟล์ที่จะรวม ช่องว่างใด ๆ ระหว่างโทเค็นจะถูกลดขนาดเป็นช่องว่างเดียว แล้วพื้นที่ใด ๆ หลังจากที่เริ่มต้น <จะถูกเก็บไว้ แต่พื้นที่ต่อท้ายก่อนปิด> ถูกละเว้น CPP ค้นหาไฟล์ตามกฎสำหรับการรวมวงเล็บมุม
ฉันรู้ว่านี่เป็นการกำหนดการนำไปใช้ แต่ทำไมต้องเป็นเช่นนี้สำหรับ GCC ฉันหมายถึงเฉพาะประโยคที่เน้นสีด้านบน
แก้ไข
ฉันเพิ่งสังเกตเห็นว่าย่อหน้าที่สามก่อนที่จะยกมาข้างต้นกล่าวว่าต่อไปนี้:
คุณต้องระวังเมื่อคุณกำหนดแมโคร
#define
บันทึกโทเค็นไม่ใช่ข้อความ ตัวประมวลผลล่วงหน้าไม่มีทางรู้ได้ว่าแมโครจะถูกใช้เป็นอาร์กิวเมนต์#include
ดังนั้นจึงสร้างโทเค็นสามัญไม่ใช่ชื่อส่วนหัว สิ่งนี้ไม่น่าจะทำให้เกิดปัญหาหากคุณใช้เครื่องหมายคำพูดคู่ซึ่งรวมถึงค่าคงที่ของสตริง ถ้าคุณใช้วงเล็บมุม แต่คุณอาจมีปัญหา
ไม่มีใครรู้ว่าปัญหาแบบไหนที่ชี้ให้เห็นที่นี่?