แก้ไขแล้ว: วิธีปฏิบัติตาม c ++ 17

การปรับปรุงครั้งล่าสุด: 09/11/2023

แน่นอนว่าดูเหมือนมีข้อกำหนดมากมายสำหรับบทความนี้ เอาล่ะ:

โลกแห่งการเขียนโปรแกรมมีการพัฒนาอย่างต่อเนื่อง และด้วยเวอร์ชันของ C++ ที่เราใช้สำหรับการพัฒนา หนึ่งในเวอร์ชันล่าสุดคือ C++17 นำเสนอฟีเจอร์และความสามารถใหม่ๆ มากมายที่ช่วยให้นักพัฒนาสามารถเขียนโค้ดที่มีประสิทธิภาพและกระชับยิ่งขึ้น หลายท่านอาจสงสัยว่าจะคอมไพล์ด้วย C++ เวอร์ชันใหม่นี้ได้อย่างไร บทความนี้มีจุดมุ่งหมายเพื่อแก้ไขปัญหาของคุณและอธิบายวิธีการดำเนินการ

C++17 คืออะไร และเหตุใดจึงต้องใช้

C ++ 17 เป็นเวอร์ชันมาตรฐานล่าสุดของ C++ โปรแกรมเมอร์จำนวนมากเปลี่ยนมาใช้เพราะว่ามันมีไวยากรณ์ที่สะอาดตามากขึ้น รองรับไลบรารี่ที่สมบูรณ์ยิ่งขึ้น และคุณสมบัติใหม่อันทรงคุณค่าหลายประการที่สามารถทำให้การเขียนโค้ดง่ายขึ้นและเพิ่มประสิทธิภาพได้

// ตัวอย่างโค้ด C++17
#include
#include

int หลัก ()
{
std::เวกเตอร์ โวลต์ = {1, 2, 3, 4, 5};
สำหรับ (อัตโนมัติ& n : v)
{
มาตรฐาน::cout << n << "n"; } กลับ 0; } [/code] ในโค้ด C++17 ข้างต้น รายการเวกเตอร์เริ่มต้นและฟีเจอร์ลูปตามช่วงถูกนำมาใช้ ทำให้โค้ดง่ายขึ้นและอ่านได้ง่ายกว่า C++ เวอร์ชันก่อนหน้า

การคอมไพล์โดยใช้ C++17

กระบวนการคอมไพล์จะแตกต่างกันไปขึ้นอยู่กับคอมไพเลอร์ที่คุณใช้ แต่คอมไพเลอร์สมัยใหม่ส่วนใหญ่รองรับ C++17 เราจะพูดถึงสองเรื่องยอดนิยม GNU คอมไพเลอร์คอลเลกชัน (GCC)และ Visual Studio ของไมโครซอฟต์ (MSVC)

สำหรับ GCC คุณสามารถระบุ C++17 ได้โดยการเพิ่ม -std = C ++ 17 ธง:

[รหัส lang=”C++”]
g++ -std=c++17 myfile.cpp -o myfile

สำหรับ MSVC ใน Visual Studio เวอร์ชันมาตรฐานจะถูกตั้งค่าในคุณสมบัติ:

โครงการ -> คุณสมบัติ -> C/C++ -> ภาษา -> มาตรฐานภาษา C++ -> มาตรฐาน ISO C++17

ทำความคุ้นเคยกับคุณสมบัติของ C++17

คุณสมบัติหลักที่ C++17 นำเสนอ ได้แก่ การผูกแบบมีโครงสร้าง ประเภททางเลือก และอื่นๆ คุณสมบัติเหล่านี้มีจุดมุ่งหมายเพื่อปรับปรุงความน่าเชื่อถือและประสิทธิภาพของโค้ด การทำความคุ้นเคยกับคุณสมบัติเหล่านี้จะต้องมีการฝึกฝนบ้าง

// การผูกแบบมีโครงสร้าง
มาตรฐาน::แผนที่ ม. = {{1, “หนึ่ง”}, {2, “สอง”}};
สำหรับ (อัตโนมัติ const& [คีย์, ค่า] : m)
{
ศาล << คีย์ << " = " << ค่า << 'n'; } [/code] บทความนี้ได้เน้นย้ำถึงวิธีการคอมไพล์และวิเคราะห์โค้ด C++17 เมื่อข้อกำหนดด้านภาษามีการพัฒนา โค้ดที่เราเขียนก็เปลี่ยนแปลงไปด้วย การเรียนรู้และปรับตัวเข้ากับการเปลี่ยนแปลงเหล่านี้ไม่เพียงแต่สำคัญ แต่ยังเป็นแง่มุมที่น่าสนใจของการเป็นโปรแกรมเมอร์ด้วย

กระทู้ที่เกี่ยวข้อง: