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

C ++ เป็นภาษาโปรแกรมทั่วไป เดิมได้รับการออกแบบให้เป็นส่วนขยายของ C และมีไวยากรณ์ที่คล้ายกัน แต่ตอนนี้มันเป็นภาษาที่แตกต่างอย่างสิ้นเชิง ใช้แท็กนี้สำหรับคำถามเกี่ยวกับรหัส (จะ) คอมไพล์ด้วยคอมไพเลอร์ C ++ ใช้แท็กเฉพาะรุ่นสำหรับคำถามที่เกี่ยวข้องกับการแก้ไขมาตรฐานเฉพาะ [C ++ 11], [C ++ 14], [C ++ 17] หรือ [C ++ 20] เป็นต้น

20
ฉันจะวนซ้ำ enum ได้อย่างไร
ฉันเพิ่งสังเกตเห็นว่าคุณไม่สามารถใช้ตัวดำเนินการทางคณิตศาสตร์มาตรฐานกับ enum เช่น ++ หรือ + = ดังนั้นวิธีที่ดีที่สุดในการวนซ้ำผ่านค่าทั้งหมดใน C ++ enum คืออะไร
304 c++  enums 

4
const vs constexpr กับตัวแปร
มีความแตกต่างระหว่างคำจำกัดความต่อไปนี้หรือไม่? const double PI = 3.141592653589793; constexpr double PI = 3.141592653589793; หากไม่ต้องการรูปแบบใดใน C ++ 11

7
วิธีการสร้าง Makefile C ++ SIMPLE
เราจำเป็นต้องใช้ Makefile เพื่อดึงทุกอย่างเข้าด้วยกันสำหรับโครงการของเรา แต่อาจารย์ของเราไม่เคยแสดงให้เราเห็นถึงวิธีการ ฉันมีเพียงไฟล์เดียวเท่านั้นa3driver.cpp. คนขับนำเข้าชั้นเรียนจากสถานที่"/user/cse232/Examples/example32.sequence.cpp"คนขับรถนำเข้าชั้นเรียนจากสถานที่ แค่นั้นแหละ. ทุกสิ่งทุกอย่างมีอยู่ในนั้นด้วย.cppนั้นด้วย ฉันจะสร้าง Makefile ง่ายๆที่สร้างไฟล์เรียกทำงานได้a3a.exeอย่างไร
303 c++  makefile 


20
เหตุใดฉันจึงควรเปิดใช้งานคำเตือนคอมไพเลอร์เสมอ
ฉันมักจะได้ยินว่าเมื่อรวบรวมโปรแกรม C และ C ++ ฉันควร "เปิดใช้งานคำเตือนคอมไพเลอร์" เสมอ ทำไมถึงจำเป็น ฉันจะทำอย่างไร บางครั้งฉันก็ได้ยินว่าฉันควร "ถือว่าคำเตือนเป็นข้อผิดพลาด" ฉันควร? ฉันจะทำอย่างไร

13
ทำไมคอมไพเลอร์ C ++ ไม่ได้กำหนดโอเปอเรเตอร์ == และโอเปอเรเตอร์! =?
ฉันเป็นแฟนตัวยงของการให้คอมไพเลอร์ทำงานให้คุณได้มากที่สุด เมื่อเขียนคลาสง่าย ๆ คอมไพเลอร์สามารถให้สิ่งต่อไปนี้กับ 'ฟรี': ตัวสร้างเริ่มต้น (ว่าง) ตัวสร้างสำเนา ผู้ทำลายล้าง ผู้ประกอบการที่ได้รับมอบหมาย ( operator=) แต่ก็ดูเหมือนจะไม่สามารถทำให้คุณดำเนินการเปรียบเทียบใด ๆ - เช่นหรือoperator== operator!=ตัวอย่างเช่น: class foo { public: std::string str_; int n_; }; foo f1; // Works foo f2(f1); // Works foo f3; f3 = f2; // Works if (f3 == f2) // Fails { } if …
302 c++  operators 

14
มีเครื่องมือการวิเคราะห์แบบสแตติกโอเพนซอร์ส C ++ อะไรบ้าง [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา Java มีดีมากเปิดเครื่องมือในการวิเคราะห์แหล่งคงที่บางอย่างเช่นFindBugs , CheckstyleและPMD เครื่องมือเหล่านี้จะง่ายต่อการใช้ประโยชน์มากวิ่งบนระบบปฏิบัติการหลายระบบและฟรี ผลิตภัณฑ์การวิเคราะห์เชิงสถิต C ++ เชิงพาณิชย์มีให้บริการ แม้ว่าการมีผลิตภัณฑ์ดังกล่าวดีมากค่าใช้จ่ายเป็นวิธีที่มากเกินไปสำหรับนักเรียนและมักจะค่อนข้างยากที่จะรับรุ่นทดลองใช้ ทางเลือกคือการค้นหาเครื่องมือวิเคราะห์โอเพ่นซอร์ส C ++ แบบโอเพ่นซอร์สที่จะทำงานบนหลายแพลตฟอร์ม (Windows และ Unix) ด้วยการใช้เครื่องมือโอเพนซอร์ซมันสามารถปรับเปลี่ยนให้เหมาะสมกับความต้องการบางอย่างได้ การค้นหาเครื่องมือไม่ใช่เรื่องง่าย ด้านล่างนี้เป็นรายการสั้น ๆ ของเครื่องมือวิเคราะห์แบบคงที่ C ++ ที่พบหรือแนะนำโดยผู้อื่น C ++ ตรวจสอบhttp://sf.net/projects/cppcheck/ Oink http://danielwilkerson.com/oink/index.html ตัวนับรหัส C และ C ++ http://sourceforge.net/projects/cccc/ Splint (จากคำตอบ) Mozilla's Pork (จากคำตอบ) (ตอนนี้เป็นส่วนหนึ่งของ …

4
การแสดงออกของยิ้มกับเคราคืออะไร:“ <:] {%>”?
ฉันเจอโปรแกรมต่อไปนี้ซึ่งรวบรวมได้โดยไม่มีข้อผิดพลาดหรือแม้กระทั่งคำเตือน: int main(){ &lt;:]{%&gt;; // smile! } ตัวอย่างสด โปรแกรมทำอะไรและยิ้มนั้นคืออะไร?

3
ทำไม NaN - NaN == 0.0 กับ Intel C ++ Compiler
เป็นที่ทราบกันดีว่า NaNs เผยแพร่เลขคณิต แต่ฉันไม่พบการสาธิตดังนั้นฉันจึงเขียนการทดสอบเล็กน้อย: #include &lt;limits&gt; #include &lt;cstdio&gt; int main(int argc, char* argv[]) { float qNaN = std::numeric_limits&lt;float&gt;::quiet_NaN(); float neg = -qNaN; float sub1 = 6.0f - qNaN; float sub2 = qNaN - 6.0f; float sub3 = qNaN - qNaN; float add1 = 6.0f + qNaN; float add2 = qNaN …
300 c++  c  floating-point  ieee-754  icc 

6
นิยามแปลก ๆ ของมาโคร TRUE และ FALSE
ฉันได้เห็นคำจำกัดความของแมโครดังต่อไปนี้ในหนังสือการเข้ารหัส #define TRUE '/'/'/' #define FALSE '-'-'-' ไม่มีคำอธิบายที่นั่น กรุณาอธิบายให้ฉันวิธีการเหล่านี้จะทำงานเป็นและTRUEFALSE
300 c++  c  macros  boolean  obfuscation 

10
เปรียบเทียบกรอบการทดสอบหน่วย C ++ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม &amp; คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันรู้ว่ามีคำถามสองสามข้อเกี่ยวกับคำแนะนำสำหรับกรอบการทดสอบหน่วย C ++ แต่คำตอบทั้งหมดไม่ได้ช่วยเพราะพวกเขาเพิ่งแนะนำหนึ่งในกรอบ แต่ไม่ได้ให้ข้อมูลใด ๆ เกี่ยวกับการเปรียบเทียบ (คุณสมบัติ) ฉันคิดว่ากรอบที่น่าสนใจที่สุดคือ CppUnit, Boost และกรอบการทดสอบใหม่ของ Google มีใครเปรียบเทียบบ้างไหม?



7
รหัส C ++ สามารถใช้ได้ทั้งใน C ++ 03 และ C ++ 11 แต่ทำสิ่งที่แตกต่างกันหรือไม่
เป็นไปได้หรือไม่ที่รหัส C ++ จะสอดคล้องกับทั้งมาตรฐานC ++ 03และมาตรฐานC ++ 11แต่ทำสิ่งที่แตกต่างกันไปขึ้นอยู่กับมาตรฐานที่กำลังรวบรวม?

4
ขนาดของอักขระ ('a') ใน C / C ++
ขนาดของตัวละครใน C และ C ++ คืออะไร? เท่าที่ฉันรู้ขนาดของถ่านเท่ากับ 1 ไบต์ทั้งใน C และ C ++ ใน C: #include &lt;stdio.h&gt; int main() { printf("Size of char : %d\n", sizeof(char)); return 0; } ใน C ++: #include &lt;iostream&gt; int main() { std::cout &lt;&lt; "Size of char : " &lt;&lt; sizeof(char) &lt;&lt; "\n"; return 0; …
298 c++  c  types 

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