คำถามติดแท็ก c++

คำถามเกี่ยวกับ C ++ ซึ่งเป็นภาษาการเขียนแบบสแตติกแบบหลายกระบวนทัศน์รวบรวมภาษาการเขียนโปรแกรมสำหรับวัตถุประสงค์ทั่วไป

1
raw, weak_ptr, unique_ptr, shared_ptr ฯลฯ ... วิธีการเลือกอย่างชาญฉลาด?
มีพอยน์เตอร์จำนวนมากใน C ++ แต่จะซื่อสัตย์ใน 5 ปีหรือมากกว่านั้นในการเขียนโปรแกรม C ++ (โดยเฉพาะกับ Qt Framework) ฉันใช้พอยน์เตอร์พอยต์แบบเก่าเท่านั้น: SomeKindOfObject *someKindOfObject = new SomeKindOfObject(); ฉันรู้ว่ามีคำแนะนำ "ฉลาด" อื่น ๆ อีกมากมาย: // shared pointer: shared_ptr<SomeKindofObject> Object; // unique pointer: unique_ptr<SomeKindofObject> Object; // weak pointer: weak_ptr<SomeKindofObject> Object; แต่ฉันไม่มีความคิดเพียงเล็กน้อยเกี่ยวกับสิ่งที่พวกเขาทำและสิ่งที่พวกเขาสามารถเสนอให้ฉันได้เปรียบเทียบตัวชี้แบบดิบ ตัวอย่างเช่นฉันมีส่วนหัวของชั้นนี้: #ifndef LIBRARY #define LIBRARY class LIBRARY { public: // Permanent list …

7
ทำไมคอนสตรัคเตอร์ถึงไม่ได้รับมรดก
ฉันสับสนว่าปัญหาจะเกิดขึ้นได้อย่างไรหากคอนสตรัคเตอร์ได้รับมรดกจากคลาสฐาน Cpp Primer Plus กล่าวว่า ก่อสร้างจะแตกต่างจากวิธีการเรียนอื่น ๆ ในการที่พวกเขาสร้างวัตถุใหม่ในขณะที่วิธีการอื่น ๆ จะเรียกโดยวัตถุที่มีอยู่ นี่คือเหตุผลหนึ่งการก่อสร้างยังไม่ได้รับการถ่ายทอด การสืบทอดหมายความว่าวัตถุที่ได้มาสามารถใช้วิธีการระดับฐาน แต่ในกรณีของการก่อสร้างวัตถุที่ไม่มีอยู่จนกว่าหลังจากที่ผู้สร้างได้ทำงานของมัน ฉันเข้าใจว่าตัวสร้างถูกเรียกก่อนการสร้างวัตถุจะเสร็จสมบูรณ์ มันจะนำไปสู่ปัญหาได้อย่างไรถ้าคลาสเด็กสืบทอด ( โดยการสืบทอดฉันหมายความว่าคลาสเด็กสามารถแทนที่เมธอดคลาสพาเรนต์เป็นต้นไม่เพียง แต่เข้าถึงเมธอดคลาสคลาสหลัก ) คอนสตรัคเตอร์หลัก ฉันเข้าใจว่าไม่มีความจำเป็นที่จะต้องเรียกคอนสตรัคเตอร์อย่างชัดเจนจากภายในโค้ด [ไม่ใช่สิ่งที่ฉันรู้ขณะนี้] ยกเว้นขณะสร้างวัตถุ แม้ว่าคุณจะสามารถใช้กลไกบางอย่างในการเรียก const constor ของ parent [ใน cpp, การใช้::หรือการใช้member initialiser list, In java using super] ใน Java มีการบังคับให้เรียกมันในบรรทัดที่ 1 ฉันเข้าใจว่าเพื่อให้แน่ใจว่าวัตถุแม่ถูกสร้างขึ้นก่อนแล้วจึงสร้างการสร้างวัตถุลูก มันสามารถแทนที่มัน แต่ฉันไม่สามารถคิดสถานการณ์ที่ทำให้เกิดปัญหาได้ หากเด็กได้สืบทอดคอนสตรัคเตอร์หลักสิ่งที่สามารถผิดพลาดได้? ดังนั้นนี่คือเพื่อหลีกเลี่ยงการสืบทอดฟังก์ชันที่ไม่จำเป็น หรือมีมากไปไหม
33 c++  inheritance 

9
เป็นไปได้ไหมที่จะเขียนข้อความยืนยันมากเกินไป?
ฉันเป็นแฟนตัวยงของการassertตรวจสอบการเขียนในรหัส C ++ เป็นวิธีการตรวจสอบกรณีในระหว่างการพัฒนาที่ไม่สามารถเกิดขึ้นได้ แต่จะเกิดขึ้นเพราะข้อบกพร่องตรรกะในโปรแกรมของฉัน เป็นการปฏิบัติที่ดีโดยทั่วไป อย่างไรก็ตามฉันสังเกตเห็นว่าบางฟังก์ชั่นที่ฉันเขียน (ซึ่งเป็นส่วนหนึ่งของคลาสที่ซับซ้อน) มีการยืนยันมากกว่า 5+ ครั้งซึ่งรู้สึกว่ามันอาจเป็นการฝึกเขียนโปรแกรมที่ไม่ดีในแง่ของความสามารถในการอ่านและการบำรุงรักษา ฉันคิดว่ามันยังยอดเยี่ยมเพราะแต่ละคนต้องการให้ฉันคิดเกี่ยวกับฟังก์ชั่นก่อนและหลังการทำงานและพวกเขาช่วยดักจับแมลง อย่างไรก็ตามฉันแค่อยากจะเอามันออกไปถามว่ามีกระบวนทัศน์ที่ดีกว่าสำหรับการจับข้อผิดพลาดทางตรรกะในกรณีที่จำเป็นต้องใช้เช็คจำนวนมากหรือไม่ ความเห็นของ Emacs : เนื่องจาก Emacs เป็นตัวเลือกของฉันฉันจึงขอแสดงความคิดเห็นเล็กน้อยซึ่งช่วยลดความรู้สึกรกรุงรังที่พวกเขาสามารถให้ได้ นี่คือสิ่งที่ฉันเพิ่มลงในไฟล์. emacs ของฉัน: ; gray out the "assert(...)" wrapper (add-hook 'c-mode-common-hook (lambda () (font-lock-add-keywords nil '(("\\<\\(assert\(.*\);\\)" 1 '(:foreground "#444444") t))))) ; gray out the stuff inside parenthesis with a slightly lighter …

4
คอมไพเลอร์ JIT สำหรับ C, C ++ และไลค์
มีคอมไพเลอร์ทันเวลาหรือไม่สำหรับภาษาที่คอมไพล์เช่น C และ C ++ (ชื่อแรกที่นึกได้คือ Clang และ LLVM! แต่ฉันไม่คิดว่าพวกเขาจะสนับสนุน) คำอธิบาย: ฉันคิดว่าซอฟต์แวร์สามารถได้รับประโยชน์จากข้อเสนอแนะการทำโปรไฟล์รันไทม์และการรวบรวมฮอตสปอตที่รันไทม์ให้ได้ประสิทธิภาพสูงสุดแม้สำหรับภาษาที่คอมไพล์ระหว่างเครื่องเช่น C และ C ++ การปรับให้เหมาะสมแบบแนะนำตัวด้วยโปรไฟล์ทำหน้าที่คล้ายกัน แต่ด้วยความแตกต่าง JIT จะมีความยืดหยุ่นมากขึ้นในสภาพแวดล้อมที่แตกต่างกัน ใน PGO คุณเรียกใช้ไบนารีของคุณก่อนที่จะปล่อย หลังจากคุณเผยแพร่แล้วจะไม่มีการรวบรวมผลตอบรับจากสภาพแวดล้อม / อินพุตที่รันไทม์ ดังนั้นหากรูปแบบการป้อนข้อมูลมีการเปลี่ยนแปลงมันจะสอบสวนเพื่อปรับประสิทธิภาพ แต่ JIT ใช้งานได้ดีแม้ในสภาพนั้น อย่างไรก็ตามฉันคิดว่ามันเป็นเรื่องที่ถกเถียงกันอยู่ว่าการรวบรวม JIT นั้นมีประโยชน์มากกว่าค่าใช้จ่ายของตัวเอง

7
เขียนใน C เพื่อประสิทธิภาพ? [ปิด]
ฉันรู้ว่าฉันเคยได้ยินบ่อยๆว่า C มักจะมีข้อได้เปรียบด้านประสิทธิภาพมากกว่า C ++ ฉันไม่ได้คิดอย่างอื่นจนกว่าฉันจะรู้ว่า MSVC ดูเหมือนจะไม่สนับสนุนมาตรฐานใหม่ล่าสุดของ C แต่รุ่นล่าสุดรองรับ C99 (เท่าที่ฉันรู้) ฉันวางแผนที่จะเขียนไลบรารีด้วยโค้ดบางอย่างเพื่อให้แสดงผลใน OpenGL เพื่อให้ฉันสามารถนำมาใช้ซ้ำได้ ฉันวางแผนที่จะเขียนไลบรารีใน C เนื่องจากการเพิ่มประสิทธิภาพใด ๆ ก็ยินดีต้อนรับเมื่อมันมาถึงกราฟิก แต่มันจะคุ้มหรือไม่ รหัสที่ใช้ไลบรารีน่าจะเขียนใน C ++ และฉันต้องการรหัสใน C ++ โดยทั่วไป อย่างไรก็ตามถ้ามันสร้างความแตกต่างเล็กน้อยในการแสดงฉันก็น่าจะไปกับ C อาจสังเกตได้ว่าห้องสมุดนี้จะเป็นสิ่งที่ฉันจะใช้ในการทำงานกับ Windows / OS X / Linux และฉันอาจรวบรวมทุกอย่างโดยพื้นฐาน (MSVC สำหรับ Windows, Clang หรือ GCC สำหรับ OS X และ GCC สำหรับ …

2
เหตุใดค่าบูลีนจึงถูกเก็บเป็นไบต์ภายในคอมพิวเตอร์เมื่อต้องการเพียงบิตเดียว
ฉันเพิ่งเริ่มเรียนรู้การเขียนรหัสและในหนังสือของฉันฉันเจอคำถามนี้ "ทำไมค่าบูลีนจึงถูกจัดเก็บเป็นไบต์ภายในคอมพิวเตอร์เมื่อต้องการเพียงบิตเดียว" บางคนสามารถให้ความกระจ่างแก่คำถามนี้ได้มากขึ้น

10
อะไรคือจุดใช้ของรายการเหนือเวคเตอร์ใน C ++?
ฉันใช้การทดลอง 3 แบบที่เกี่ยวข้องกับรายการ C ++ และเวกเตอร์ ผู้ที่มีเวกเตอร์พิสูจน์ได้ว่ามีประสิทธิภาพมากขึ้นแม้ว่าจะมีการแทรกอยู่ตรงกลางจำนวนมาก ดังนั้นคำถาม: ในกรณีใดรายการที่มีเหตุผลมากกว่าเวคเตอร์? หากเวกเตอร์ดูเหมือนจะมีประสิทธิภาพมากขึ้นในกรณีส่วนใหญ่และพิจารณาว่าสมาชิกของพวกเขาเหมือนกันแล้วจะมีข้อได้เปรียบอะไรที่เหลืออยู่สำหรับรายการ? สร้างจำนวนเต็ม N และวางไว้ในคอนเทนเนอร์เพื่อให้คอนเทนเนอร์ยังคงเรียงลำดับ การแทรกได้รับการดำเนินการอย่างไร้เดียงสาโดยการอ่านองค์ประกอบทีละหนึ่งและแทรกใหม่ขวาก่อนที่จะมีขนาดใหญ่ขึ้นครั้งแรก ด้วยรายการเวลาจะผ่านหลังคาเมื่อมิติเพิ่มขึ้นเมื่อเทียบกับเวกเตอร์ แทรกจำนวนเต็ม N ที่ส่วนท้ายของคอนเทนเนอร์ สำหรับรายการและเวกเตอร์เวลาเพิ่มขึ้นตามลำดับความสำคัญเท่ากันแม้ว่ามันจะเร็วขึ้น 3 เท่าเมื่อใช้เวกเตอร์ แทรกจำนวนเต็ม N ในคอนเทนเนอร์ เริ่มจับเวลา เรียงลำดับคอนเทนเนอร์โดยใช้ list.sort สำหรับรายการและ std :: sort สำหรับเวกเตอร์ หยุดจับเวลา อีกครั้งเวลาเพิ่มขึ้นตามลำดับความสำคัญเท่ากัน แต่มันจะเร็วขึ้นโดยเฉลี่ย 5 เท่าด้วยเวกเตอร์ ฉันอาจทำการทดสอบต่อไปและหาตัวอย่างสองสามข้อที่รายการจะพิสูจน์ได้ดีขึ้น แต่ประสบการณ์ร่วมกันของพวกคุณที่อ่านข้อความนี้อาจให้คำตอบที่มีประสิทธิผลมากขึ้น คุณอาจเจอสถานการณ์ที่รายการใช้งานได้สะดวกกว่าหรือทำได้ดีกว่า

8
การเรียนรู้ C ++ ผ่าน Qt Framework จริง ๆ การเรียนรู้ C ++ [ปิด]
ปัญหาที่ฉันมีคือหนังสือ C ++ ส่วนใหญ่ที่ฉันอ่านใช้เวลาเกือบตลอดไปในเรื่องของไวยากรณ์และพื้นฐานของภาษาเช่นforลูปwhile, อาร์เรย์, รายการ, ตัวชี้ ฯลฯ แต่ดูเหมือนว่าพวกเขาไม่เคยสร้างสิ่งใดที่เรียบง่ายพอที่จะใช้สำหรับการเรียนรู้ แต่ยังมีประโยชน์พอที่จะทำให้คุณเข้าใจปรัชญาและพลังของภาษา จากนั้นฉันก็สะดุดกับQTซึ่งเป็นห้องสมุดที่น่าทึ่ง! แต่ทำงานผ่านการสาธิตที่พวกเขามีดูเหมือนว่าตอนนี้ฉันอยู่ในภาวะที่กลืนไม่เข้าคายไม่ออก ฉันรู้สึกเหมือนลูกชายของเศรษฐีขับรถรอบในรถสปอร์ตที่ได้รับเงินอุดหนุนจากพ่อ เช่นฉันสามารถสร้างซอฟต์แวร์ที่ยอดเยี่ยม แต่ไม่มีเงื่อนงำสิ่งที่เกิดขึ้นภายใต้ประทุน ตัวอย่างของภาวะที่กลืนไม่เข้าคายไม่ออกของฉันใช้งานในการสร้างเว็บเบราว์เซอร์ที่เรียบง่าย ใน C ++ บริสุทธิ์ฉันไม่รู้ด้วยซ้ำว่าจะเริ่มต้นยังไงกับไลบรารี่ Qt ที่สามารถทำได้ภายในโค้ดไม่กี่บรรทัด ฉันไม่ได้บ่นเกี่ยวกับเรื่องนี้ ฉันแค่สงสัยว่าจะเติมความรู้ที่ว่างเปล่าระหว่างโครงสร้างพื้นฐานของภาษาและอินเทอร์เฟซระดับสูงที่กรอบ Qt ให้ได้อย่างไร

11
typedefs และ #defines
เราทุกคนเคยใช้typedefและ#defineครั้งเดียวแน่นอน วันนี้ในขณะที่ทำงานกับพวกเขาฉันเริ่มไตร่ตรองในบางสิ่ง พิจารณาสถานการณ์ด้านล่าง 2 สถานการณ์เพื่อใช้intประเภทข้อมูลที่มีชื่ออื่น: typedef int MYINTEGER และ #define MYINTEGER int เช่นเดียวกับสถานการณ์ข้างต้นเราสามารถทำสิ่งต่าง ๆ ได้โดยใช้ #define และทำได้เช่นเดียวกันโดยใช้ typedef แม้ว่าวิธีการที่เราทำแบบเดียวกันอาจแตกต่างกันมาก #define ยังสามารถทำการกระทำของ MACRO ซึ่ง typedef ไม่สามารถทำได้ แม้ว่าเหตุผลพื้นฐานสำหรับการใช้งานนั้นแตกต่างกัน แต่การทำงานต่างกันอย่างไร เมื่อใดที่ควรจะเป็นที่ต้องการมากกว่ากันเมื่อทั้งสองสามารถใช้? อีกอย่างหนึ่งรับประกันได้ว่าจะเร็วกว่าสถานการณ์อื่นหรือไม่ (เช่น #define เป็นคำสั่งของตัวประมวลผลล่วงหน้าดังนั้นทุกอย่างจะทำเร็วกว่าการคอมไพล์หรือรันไทม์)

5
อนุญาตการวนซ้ำของเวกเตอร์ภายในโดยไม่มีการรั่วไหลของการใช้งาน
ฉันมีชั้นเรียนที่แสดงถึงรายชื่อของผู้คน class AddressBook { public: AddressBook(); private: std::vector<People> people; } ฉันต้องการอนุญาตให้ลูกค้าทำซ้ำเวกเตอร์ของผู้คน ความคิดแรกที่ฉันมีก็คือ: std::vector<People> & getPeople { return people; } แต่ฉันไม่ต้องการที่จะรั่วไหลรายละเอียดการดำเนินการให้กับลูกค้า ฉันอาจต้องการรักษาค่าคงที่บางอย่างเมื่อมีการแก้ไขเวกเตอร์และฉันสูญเสียการควบคุมค่าคงที่เหล่านี้เมื่อฉันรั่วการใช้งาน วิธีที่ดีที่สุดในการอนุญาตให้ทำซ้ำโดยไม่รั่วไหลภายในคืออะไร?
32 c++ 

8
เป็นวิธีปฏิบัติที่ดีหรือไม่ที่จะใช้ชนิดข้อมูลที่เล็กลงสำหรับตัวแปรเพื่อบันทึกหน่วยความจำ?
เมื่อฉันเรียนรู้ภาษา C ++ เป็นครั้งแรกที่ฉันได้เรียนรู้ว่านอกเหนือจาก int, float ฯลฯ รุ่นข้อมูลขนาดเล็กหรือใหญ่กว่านั้นมีอยู่ในภาษา ตัวอย่างเช่นฉันสามารถเรียกตัวแปร x int x; or short int x; ความแตกต่างที่สำคัญคือการที่ short int ใช้หน่วยความจำ 2 ไบต์ในขณะที่ int ใช้ 4 ไบต์และ short int มีค่าน้อยกว่า แต่เราสามารถเรียกสิ่งนี้ว่าทำให้มันเล็กลงได้: int x; short int x; unsigned short int x; ซึ่ง จำกัด มากยิ่งขึ้น คำถามของฉันคือถ้าเป็นแนวปฏิบัติที่ดีที่จะใช้ชนิดข้อมูลแยกต่างหากตามค่าตัวแปรที่คุณใช้ภายในโปรแกรม เป็นความคิดที่ดีที่จะประกาศตัวแปรตามชนิดข้อมูลเหล่านี้หรือไม่?

1
เหตุใด C ++ ไม่มีคำหลัก“ บริสุทธิ์” สำหรับฟังก์ชันเสมือนจริง
ฉันสงสัยอยู่เสมอว่าทำไมเราถึงโค้ด virtual void MyFunction() = 0; และไม่ pure virtual void MyFunction(); มีการอ้างอิงสำหรับพื้นฐานของการตัดสินใจนี้หรือไม่?

3
ข้อผิดพลาดในการพิจารณาการจัดการ
ปัญหา: ตั้งแต่เวลานานฉันกังวลเกี่ยวกับexceptionsกลไกเพราะฉันรู้สึกว่ามันไม่ได้แก้ไขสิ่งที่ควร เคลม: มีการถกเถียงกันนานเกี่ยวกับหัวข้อนี้และพวกเขาส่วนใหญ่มักจะพยายามเปรียบเทียบexceptionsและส่งกลับรหัสข้อผิดพลาด นี่ไม่ใช่หัวข้อที่แน่นอน พยายามกำหนดข้อผิดพลาดฉันจะเห็นด้วยกับ CppCoreGuidelines จาก Bjarne Stroustrup & Herb Sutter ข้อผิดพลาดหมายความว่าฟังก์ชันไม่สามารถบรรลุวัตถุประสงค์ที่โฆษณาไว้ การเรียกร้อง: exceptionกลไกคือ semantic ภาษาสำหรับการจัดการข้อผิดพลาด การเรียกร้อง: สำหรับฉันมี "ไม่มีข้อแก้ตัว" สำหรับฟังก์ชั่นที่ไม่ได้งาน: เพราะเรากำหนดเงื่อนไขล่วงหน้า / โพสต์ผิดดังนั้นฟังก์ชันไม่สามารถรับประกันผลลัพธ์ได้หรือกรณีพิเศษบางกรณีไม่ถือว่าสำคัญพอสำหรับการใช้เวลาในการพัฒนา ทางออก เมื่อพิจารณาแล้ว IMO ความแตกต่างระหว่างการจัดการรหัสปกติและรหัสข้อผิดพลาดคือ (ก่อนการติดตั้ง) บรรทัดที่เป็นอัตนัย การเรียกร้อง: การใช้ข้อยกเว้นเพื่อระบุว่าเมื่อใดที่ไม่ได้รักษาเงื่อนไขก่อนหรือหลังการโพสต์ไว้เป็นอีกจุดประสงค์หนึ่งของexceptionกลไก ฉันไม่ได้กำหนดเป้าหมายการใช้งานของexceptionsที่นี่ ในหนังสือหลายบทช่วยสอนและแหล่งข้อมูลอื่น ๆ พวกเขามักจะแสดงการจัดการข้อผิดพลาดเป็นศาสตร์ที่ค่อนข้างมีวัตถุประสงค์ซึ่งแก้ไขได้ด้วยexceptionsและคุณเพียงแค่ต้องการให้catchพวกเขามีซอฟต์แวร์ที่แข็งแกร่งสามารถกู้คืนจากสถานการณ์ใด ๆ แต่เป็นเวลาหลายปีในฐานะนักพัฒนาทำให้ฉันเห็นปัญหาจากแนวทางที่แตกต่าง: โปรแกรมเมอร์มีแนวโน้มที่จะทำให้งานของพวกเขาง่ายขึ้นโดยการโยนข้อยกเว้นเมื่อกรณีที่เฉพาะเจาะจงดูยากเกินกว่าที่จะดำเนินการอย่างระมัดระวัง กรณีทั่วไปนี้คือ: ปัญหาหน่วยความจำไม่เพียงพอ, ปัญหาเต็มรูปแบบดิสก์, ปัญหาไฟล์ที่เสียหายเป็นต้นซึ่งอาจเพียงพอ แต่ไม่สามารถตัดสินใจได้เสมอจากระดับสถาปัตยกรรม โปรแกรมเมอร์ไม่อ่านเอกสารอย่างละเอียดเกี่ยวกับข้อยกเว้นในไลบรารีและมักจะไม่ทราบว่าเมื่อใดและเมื่อใด นอกจากนี้แม้ว่าพวกเขารู้ว่าพวกเขาไม่ได้จัดการพวกเขาจริงๆ โปรแกรมเมอร์มักจะไม่ได้รับข้อยกเว้นเร็วพอและเมื่อพวกเขาทำมันส่วนใหญ่จะเข้าสู่ระบบและโยนต่อไป (อ้างถึงจุดแรก) สิ่งนี้มีสองผล: …

8
การใช้ Make ถือว่าล้าสมัยหรือไม่ [ปิด]
ดังนั้นฉันจึงเจอหลายความคิดเห็น / โพสต์ / อื่น ๆ เกี่ยวกับการสร้าง makefiles โดยตรงและมันเป็นเรื่องโง่ที่ต้องทำในปี 2015 ฉันรู้เครื่องมือต่าง ๆ เช่น CMake และฉันใช้ CMake บ่อยครั้งมาก CMake กำลังสร้าง Makefile ให้คุณและช่วยในการลบความน่าเบื่อของการทำมันด้วยตัวคุณเอง แน่นอนว่ามันเพิ่มคุณสมบัติที่ยอดเยี่ยมอื่น ๆ อีกมากมาย ... แต่มันก็ยังเป็น Makefile ในที่สุด ดังนั้นคำถามของฉันคือการพูดคุย 'ล้าสมัย' เกี่ยวกับการอ้างอิงถึงยูทิลิตี้ Make ทั้งหมดหรือเพียงแค่ความคิดในการเขียน Makefiles ของคุณเองหรือไม่ ฉันไม่ได้ใช้ IDE สำหรับการพัฒนา C / C ++ เลย (แค่ emacs) ดังนั้นฉันจึงเขียน Makefiles เสมอ ถ้า Make …
31 c++  c  builds  make  cmake 

2
C ++ / CX และ C ++ / CLI คืออะไรและเกี่ยวข้องกับ C ++ และ WinRT อย่างไร
ฉันกำลังพิจารณาที่จะท้าทายการเรียนรู้ C ++ สำหรับการออกแบบแอพ Metro และนั่นคือตอนที่ฉันเจอ C ++ / CX แอพ Metro สามารถใช้รหัสใน C ++ 11 ได้หรือไม่? พวกเขาต้องการให้ C ++ / CX ทำงานหรือไม่ แล้ว C ++ / CX คืออะไร? เป็นไปได้หรือไม่ที่จะสร้างแอพ Metro โดยใช้ C ++ หรือจำเป็นต้องใช้ C ++ / CX? นอกจากนี้ C ++ / CLI ยังผูกกับภาพนี้อย่างไร
31 c++  windows-8  winrt 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.