การประกาศสตริงเวลาคอมไพล์ใน C ++ อย่างสะดวกสบาย
ความสามารถในการสร้างและจัดการสตริงระหว่างเวลาคอมไพล์ใน C ++ มีแอพพลิเคชั่นที่มีประโยชน์มากมาย แม้ว่าจะสามารถสร้างสตริงเวลาคอมไพล์ใน C ++ ได้ แต่กระบวนการนี้ยุ่งยากมากเนื่องจากต้องประกาศสตริงเป็นลำดับตัวแปรของอักขระเช่น using str = sequence<'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!'>; การดำเนินการเช่นการต่อสายอักขระการแยกสตริงย่อยและอื่น ๆ อีกมากมายสามารถนำไปใช้งานได้อย่างง่ายดายเป็นการดำเนินการกับลำดับของอักขระ เป็นไปได้ไหมที่จะประกาศสตริงเวลาคอมไพล์สะดวกกว่า ถ้าไม่มีมีข้อเสนอในผลงานที่อนุญาตให้มีการประกาศสตริงเวลาคอมไพล์ได้อย่างสะดวกหรือไม่? เหตุใดแนวทางที่มีอยู่จึงล้มเหลว ตามหลักการแล้วเราต้องการที่จะสามารถประกาศสตริงเวลาคอมไพล์ได้ดังนี้: // Approach 1 using str1 = sequence<"Hello, world!">; หรือใช้ตัวอักษรที่ผู้ใช้กำหนดเอง // Approach 2 constexpr auto str2 = "Hello, …