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

จัดทำ C ++ FAQ ที่ทำงานร่วมกันและแก้ไขโดยชุมชน

15
ความแตกต่างระหว่างการสืบทอดส่วนบุคคลสาธารณะและการป้องกัน
ความแตกต่างระหว่างคืออะไรpublic, privateและprotectedมรดกในc ++? คำถามทั้งหมดที่ฉันพบในการจัดการกับกรณีเฉพาะ

1
ฟีเจอร์ใหม่ใน C ++ 17 คืออะไร
ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ตอนนี้ C ++ 17 เสร็จสมบูรณ์แล้วดังนั้นจึงไม่น่าจะมีการเปลี่ยนแปลงครั้งใหญ่ มีการเสนอข้อเสนอหลายร้อยรายการสำหรับ C ++ 17 คุณลักษณะใดบ้างที่ถูกเพิ่มลงใน C ++ ใน C ++ 17 เมื่อใช้คอมไพเลอร์ C ++ ที่รองรับ "C ++ 1z" ฟีเจอร์ใดบ้างที่จะใช้งานได้เมื่อคอมไพเลอร์อัพเดตเป็น C ++ 17?
1007 c++  standards  c++-faq  c++17 

5
พฤติกรรมที่ไม่ได้กำหนดและจุดลำดับ
"คะแนนตามลำดับ" คืออะไร? ความสัมพันธ์ระหว่างพฤติกรรมที่ไม่ได้กำหนดและคะแนนตามลำดับคืออะไร? ฉันมักจะใช้การแสดงออกที่ตลกและซับซ้อนเช่นa[++i] = i;ทำให้ฉันรู้สึกดีขึ้น เหตุใดฉันจึงควรหยุดใช้งาน หากคุณได้อ่านบทความนี้ให้แน่ใจว่าจะแวะไปที่ติดตามคำถามไม่ได้กำหนดพฤติกรรมและลำดับจุดโหลดใหม่ (หมายเหตุ: นี่คือหมายถึงการเป็นรายการที่จะกองมากเกินของ C ++ คำถามที่พบบ่อย . ถ้าคุณต้องการที่จะวิจารณ์ความคิดของการให้คำถามที่พบบ่อยในรูปแบบนี้แล้วโพสต์บนเมตาที่เริ่มต้นทั้งหมดนี้ . จะเป็นสถานที่ที่จะทำเช่นนั้นได้คำตอบ คำถามนั้นได้รับการตรวจสอบในห้องสนทนา C ++ซึ่งแนวคิด FAQ เริ่มต้นตั้งแต่แรกดังนั้นคำตอบของคุณมีโอกาสมากที่จะได้รับการอ่านโดยผู้ที่คิดแนวคิดนี้)


5
กฎเกี่ยวกับการใช้ขีดเส้นใต้ในตัวระบุ C ++ คืออะไร
เป็นเรื่องปกติใน C ++ ในการตั้งชื่อตัวแปรสมาชิกด้วยคำนำหน้าบางชนิดเพื่อแสดงความจริงว่าเป็นตัวแปรสมาชิกแทนที่จะเป็นตัวแปรหรือพารามิเตอร์ในตัวเครื่อง หากคุณได้มาจากพื้นหลังเอ็มเอฟ, m_fooคุณอาจจะใช้ ฉันเคยเห็นmyFooบ้างเช่นกัน C # (หรืออาจจะเพียงแค่ .NET) _fooดูเหมือนว่าจะแนะนำให้ใช้เพียงขีดเป็นเช่นเดียวกับใน สิ่งนี้ได้รับอนุญาตจากมาตรฐาน C ++ หรือไม่

18
เหตุใดโปรแกรมเมอร์ C ++ ควรลดการใช้ 'ใหม่' ให้น้อยที่สุด
ฉันสะดุดกับคำถามStack Overflow หน่วยความจำรั่วด้วย std :: string เมื่อใช้ std :: list <std :: string>และหนึ่งในความเห็นบอกว่า: หยุดใช้newมาก ฉันไม่เห็นเหตุผลที่คุณใช้ใหม่ทุกที่ที่คุณทำ คุณสามารถสร้างวัตถุตามมูลค่าในC ++และเป็นหนึ่งในข้อได้เปรียบอย่างมากสำหรับการใช้ภาษา คุณไม่ต้องจัดสรรทุกอย่างบนกอง หยุดคิดเหมือนโปรแกรมเมอร์Java ฉันไม่แน่ใจจริงๆว่าเขาหมายถึงอะไร เหตุใดจึงควรสร้างวัตถุตามค่าในC ++บ่อยที่สุดเท่าที่จะเป็นไปได้และวัตถุภายในนั้นแตกต่างกันอย่างไร ฉันตีความคำตอบผิดหรือไม่


4
T&& (เครื่องหมายคู่คู่) หมายถึงอะไรใน C ++ 11
ฉันได้รับการมองเข้าไปในบางส่วนของคุณสมบัติใหม่ของ C ++ 11 T&& varและเป็นหนึ่งฉันได้สังเกตเห็นเป็นเครื่องหมายคู่ในตัวแปรประกาศเช่น สำหรับการเริ่มต้นสัตว์ร้ายตัวนี้เรียกว่าอะไร? ฉันต้องการให้ Google อนุญาตให้เราค้นหาเครื่องหมายวรรคตอนเช่นนี้ มันหมายความว่าอะไรกันแน่? จากภาพรวมในครั้งแรกดูเหมือนว่าจะเป็นการอ้างอิงสองครั้ง (เช่นตัวชี้ดับเบิลแบบ C T** var) แต่ฉันมีความลำบากในการนึกถึงกรณีการใช้งานสำหรับสิ่งนั้น

9
ทำไมจึงใช้คำสั่ง do-while และ if-else ที่ไม่มีความหมายในแมโคร
ในมาโคร C / C ++ หลายรุ่นฉันเห็นโค้ดของมาโครห่อหุ้มสิ่งที่ดูเหมือนเป็นdo whileลูปที่ไม่มีความหมาย นี่คือตัวอย่าง #define FOO(X) do { f(X); g(X); } while (0) #define FOO(X) if (1) { f(X); g(X); } else ฉันไม่เห็นว่าdo whileกำลังทำอะไรอยู่ ทำไมไม่ลองเขียนโดยไม่ได้ล่ะ #define FOO(X) f(X); g(X)
787 c++  c  c-preprocessor  c++-faq 

12
std :: wstring VS std :: string
ผมไม่สามารถที่จะเข้าใจความแตกต่างระหว่างและstd::string std::wstringฉันรู้ว่าwstringรองรับตัวละครกว้างเช่นตัวอักษร Unicode ฉันมีคำถามต่อไปนี้: เมื่อใดที่ฉันควรใช้std::wstringมากกว่าstd::string? สามารถstd::stringเก็บชุดอักขระ ASCII ทั้งหมดรวมถึงอักขระพิเศษได้หรือไม่ มีการstd::wstringสนับสนุนจากทุกที่นิยม C ++ คอมไพเลอร์? " ตัวกว้าง " คืออะไร?
741 c++  string  unicode  c++-faq  wstring 




24
มาตรฐาน C ++ ระบุขนาดของ int, long type ที่จะเป็นอย่างไร
ฉันกำลังมองหาข้อมูลโดยละเอียดเกี่ยวกับขนาดของประเภท C ++ พื้นฐาน ฉันรู้ว่ามันขึ้นอยู่กับสถาปัตยกรรม (16 บิต, 32 บิต, 64 บิต) และคอมไพเลอร์ แต่มีมาตรฐานสำหรับ C ++ หรือไม่ ฉันใช้ Visual Studio 2008 บนสถาปัตยกรรม 32 บิต นี่คือสิ่งที่ฉันได้รับ: char : 1 byte short : 2 bytes int : 4 bytes long : 4 bytes float : 4 bytes double: 8 bytes ฉันพยายามที่จะหาไม่ประสบความสำเร็จมากข้อมูลที่เชื่อถือได้ระบุขนาดของchar, short, int, …
696 c++  c++-faq 


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