Tags:
Node Thumbnail

กลุ่มมาตรฐาน ISO ลงมติเอกฉันรับรอง C++20 เข้าเป็นมาตรฐาน โดยฟีเจอร์ทั้งหมดได้รับเห็นชอบแล้ว และจะตีพิมพ์เผยแพร่ตัวมาตรฐานเป็นเล่มสมบูรณ์ภายในปลายปีนี้ โดยฟีเจอร์สำคัญ 4 ประการของ C++20 ได้แก่

  • Modules สามารถคอมไพล์ซอร์สโค้ดและเรียกใช้งานจากไฟล์ไบนารีได้โดยตรง แทนที่การใช้ไฟล์ header แบบเดิมๆ ช่วยแยกอินเทอร์เฟซของโมดูลให้ชัดเจนขึ้น ที่สำคัญคือลดเวลาคอมไพล์ได้ 5 ถึง 10 เท่าตัว
  • Concepts ฟีเจอร์ที่เสนอกันมาตั้งแต่ C++11 ใช้กำหนดคุณสมบัติของ Template ที่รับชนิดของตัวแปรเป็นอาร์กิวเมนต์ ว่าชนิดของตัวแปรที่ใส่มานั้นต้องมีคุณสมบัติตามที่กำหนดจึงคอมไพล์ผ่าน
  • Ranges ไลบรารีใหม่ที่อาศัยฟีเจอร์ Concepts มาจัดการข้อมูลประเภท collections
  • Coroutines ฟังก์ชั่นที่สามารถหยุดรอผลได้ สำหรับการทำงานแบบ asynchronous

มีฟีเจอร์บางส่วนที่มีการพูดคุยกันแต่ถูกตัดออกจาก C++20 เช่น Contracts การตรวจสอบเงื่อนไขก่อนและหลังรันฟังก์ชั่น ถูกเลื่อนไป C++23 และยังมี standard module ที่ยังออกไม่ทัน C++20 ต้องรอ C++23 เช่นกัน

ตอนนี้ฟีเจอร์ยังอิมพลีเมนต์กันไม่ครบในคอมไพลเลอร์ส่วนมาก และคอมไพล์เลอร์ที่รองรับบางฟีเจอร์ก็อาจจะปิดไว้เป็นค่าเริ่มต้น ต้องกำหนด flag ตอนรันจึงใช้งานได้

ที่มา - The Register

No Description

Get latest news from Blognone

Comments

By: sukjai
iPhoneAndroidRed HatUbuntu
on 8 September 2020 - 08:21 #1174678

ผมไม่ค่อยได้ยุ่งกับสายฮาร์ดแวร์เท่าไหร่ งานส่วนใหญ่เป็นพวกงานฐานข้อมูลจึงอยู่กับพวก java,pascal,php แต่ยอมรับว่าสาย C++ นี่หินสำหรับผมจริงๆ เคยเขียนครั้งเดียวตอนทำ exe รันโปรแกรมที่เขียนด้วย java อีกที่ นอกนั้นก็เข้ากรุไปละ

By: mr_tawan
ContributoriPhoneAndroidWindows
on 8 September 2020 - 10:31 #1174691 Reply to:1174678
mr_tawan's picture

ผมว่า สายฮาร์ดแวร์ก็ไม่ค่อยได้ใช้ C++ นะครับ (เพิ่งมามีตอน Arduino นี่แหละมั้ง?)

แล้วก็ที่รู้สึกว่าหินก็อาจจะเพราะว่า ...

เคยเขียนครั้งเดียวตอนทำ exe รันโปรแกรมที่เขียนด้วย java อีกที่

ล่ะมั้งครับ?


  • 9tawan.net บล็อกส่วนตัวฮับ
By: syootakarn
iPhoneWindows PhoneAndroidBlackberry
on 8 September 2020 - 09:50 #1174685
syootakarn's picture

Coroutines น่าจะคล้าย nodeJS

By: sian
Windows PhoneAndroidWindows
on 8 September 2020 - 11:14 #1174696
sian's picture

ตีเผยแพร่ > ตีพิมพ์เผยแพร่