Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++
C++
  1. ความแตกต่างระหว่าง #include <filename> และ #include ชื่อไฟล์ใน C/C++ คืออะไร?

    ความแตกต่างระหว่างทั้งสองรูปแบบอยู่ในตำแหน่งที่ตัวประมวลผลล่วงหน้าค้นหาไฟล์ที่จะรวมไว้ #include ตัวประมวลผลล่วงหน้าค้นหาในลักษณะที่ขึ้นกับการใช้งาน โดยจะค้นหาไดเรกทอรีที่คอมไพเลอร์กำหนดไว้ล่วงหน้า วิธีนี้มักใช้เพื่อรวมไฟล์ส่วนหัวของไลบรารีมาตรฐาน #include ชื่อไฟล์ ตัวประมวลผลล่วงหน้าจะค้นหาในได

  2. ฉันจะประกาศอาร์เรย์สองมิติใน C ++ โดยใช้ new ได้อย่างไร

    อาร์เรย์ 2 มิติแบบไดนามิกนั้นเป็นอาร์เรย์ของพอยน์เตอร์ไปยังอาร์เรย์ ดังนั้น ก่อนอื่นคุณต้องเริ่มต้นอาร์เรย์ของพอยน์เตอร์ไปยังพอยน์เตอร์ จากนั้นจึงเริ่มต้นอาร์เรย์ 1d แต่ละอันในลูป ตัวอย่าง #include<iostream> using namespace std; int main() {    int rows = 3, cols = 4;    i

  3. เหตุใดอาร์เรย์ความยาวผันแปรไม่ได้เป็นส่วนหนึ่งของมาตรฐาน C ++

    ต้องสร้างอาร์เรย์ขนาดใหญ่ที่เป็นไปได้บนสแต็ก ซึ่งโดยทั่วไปจะมีพื้นที่ว่างเพียงเล็กน้อยก็ไม่ดี หากคุณทราบขนาดล่วงหน้า คุณสามารถใช้อาร์เรย์แบบคงที่ได้ และถ้าคุณไม่ทราบขนาดล่วงหน้า คุณจะต้องเขียนโค้ดที่ไม่ปลอดภัย ไม่สามารถรวมอาร์เรย์ที่มีความยาวผันแปรได้ในภาษา C++ เนื่องจากจะต้องมีการเปลี่ยนแปลงครั้งให

  4. กฎสามข้อเทียบกับกฎข้อที่ห้าใน C ++?

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

  5. Rule of Five ใน C ++ 11 คืออะไร?

    มีการใช้กฎห้าข้อใน C++ สำหรับการจัดการทรัพยากร การจัดการทรัพยากรทำให้ไคลเอ็นต์ไม่ต้องกังวลเกี่ยวกับอายุการใช้งานของออบเจ็กต์ที่มีการจัดการ ซึ่งอาจช่วยลดการรั่วไหลของหน่วยความจำและปัญหาอื่นๆ ในโค้ด C++ แต่การจัดการนี้มีค่าใช้จ่าย กฎของ The Big Five ระบุว่า หากคุณต้องเขียนหนึ่งในหน้าที่ต่อไปนี้ คุณต้อ

  6. C++ เทียบกับ C++0x เทียบกับ C++11 เทียบกับ C++98

    C++98 เป็นรุ่นแรกของมาตรฐาน C++ ได้กำหนดโครงสร้างภาษาพื้นฐานทั้งหมด STL และไลบรารีมาตรฐาน C++03 เป็นการแก้ไขมาตรฐานครั้งต่อไป นี่ถือเป็นการแก้ไขจุดบกพร่องสำหรับมาตรฐานโดยหลักๆ แล้ว เนื่องจากมีการแก้ไขรายงานข้อบกพร่องของภาษาหลัก 92 ฉบับ รายงานข้อบกพร่องของไลบรารี 125 รายการ และรวมคุณลักษณะภาษาใหม่เพ

  7. การใช้ตำแหน่งใหม่ใน C ++ คืออะไร?

    โดยสังเขป ตำแหน่งใหม่ช่วยให้คุณสามารถ สร้าง วัตถุในหน่วยความจำที่จัดสรรให้กับตัวแปรที่กำหนดแล้ว สิ่งนี้มีประโยชน์สำหรับการปรับให้เหมาะสม เนื่องจากจะเร็วกว่าที่จะไม่จัดสรรและนำหน่วยความจำเดิมกลับมาใช้ใหม่ซึ่งถูกกำหนดไว้แล้ว สามารถใช้ได้ดังนี้ − new (address) (type) initializer เราสามารถระบุที่อยู่ที่

  8. อะไรคือความแตกต่างระหว่าง C++0x และ C++11?

    มาตรฐาน C++ และ C มักจะตั้งชื่อตามปีที่มีการเผยแพร่ ตัวอย่างเช่น ใน C++ มาตรฐานดั้งเดิมได้รับการเผยแพร่ในปี 1998 ดังนั้นจึงเรียกว่า C++98 และการแก้ไขครั้งแรกซึ่งเผยแพร่ในปี 2546 เรียกว่า C++03 สำหรับการแก้ไขครั้งต่อไป คาดว่ามาตรฐานถัดไปหลังจากนั้นจะเสร็จสิ้นภายในปี 2008 แต่เนื่องจากความไม่แน่นอน จึง

  9. อะไรคือความแตกต่างระหว่าง -std =c++11 และ -std =gnu++11?

    GNU C++ คอมไพเลอร์ g++ ให้ส่วนขยายกับภาษา C++ ความแตกต่างระหว่างสองตัวเลือกคือไม่ว่าจะเปิดใช้งานส่วนขยาย GNU ที่อาจละเมิดมาตรฐาน C ++ หรือไม่ โปรดทราบว่าส่วนขยายบางรายการยังคงมีผลเมื่อใช้ -std =c++11 หากไม่ละเมิดมาตรฐาน รายการส่วนขยายของภาษา C++ ในคอมไพเลอร์ GNU สามารถพบได้ที่นี่ - https://gcc.gnu.o

  10. รองรับมาตรฐาน C++ ใน GCC

    GCC รองรับภาษาถิ่นที่แตกต่างกันของ C++ ซึ่งสอดคล้องกับมาตรฐาน ISO ที่เผยแพร่หลายฉบับ สามารถเลือกมาตรฐานใดได้โดยใช้ตัวเลือกบรรทัดคำสั่ง -std= C++98 − GCC รองรับมาตรฐาน 1998 C++ อย่างเต็มรูปแบบตามที่แก้ไขในปี 2546 และเปลี่ยนชื่อเป็น C++03 และรายงานข้อบกพร่องบางฉบับในภายหลัง C++11 − GCC 4.8.1 เป็นการ

  11. การเปลี่ยนแปลงครั้งใหญ่ที่สุดใน C++11

    C++11 เป็นมาตรฐาน C++ สมัยใหม่ที่เผยแพร่ในปี 2011 ซึ่งทำให้มีส่วนขยายและการปรับปรุงที่สำคัญมากมายสำหรับภาษาที่มีอยู่ ต่อไปนี้คือการเปลี่ยนแปลง/ส่วนเพิ่มเติมที่สำคัญของ C++11 - รายการตัวเริ่มต้น การหักแบบอัตโนมัติ การอ้างอิงค่า Rvalue และตัวสร้างการย้าย constexpr – นิพจน์คงที่ทั่วไป การปรับเปลี่ยนคำ

  12. ภาพรวม C++11

    C++11 เป็นมาตรฐาน C++ สมัยใหม่ที่เผยแพร่ในปี 2011 ซึ่งทำให้เกิดส่วนขยายและการปรับปรุงที่สำคัญมากมายสำหรับภาษาที่มีอยู่ ได้รับการอนุมัติจาก International Organization for Standardization (ISO) เมื่อวันที่ 12 สิงหาคม 2011 และแทนที่ C++03 C++11 เรียกอีกอย่างว่า C++0x ทั้งนี้เป็นเพราะ สำหรับการแก้ไขครั้

  13. POD ประเภทใดใน C ++

    POD เป็นตัวย่อในภาษา C++ ซึ่งหมายถึงข้อมูลเก่าธรรมดา เป็นคลาส/โครงสร้างที่มีเฉพาะตัวแปรสมาชิก และไม่มีเมธอด ตัวสร้าง ตัวทำลาย ฟังก์ชันเสมือน ฯลฯ ตัวอย่างเช่น ตัวอย่าง #include<iostream> using namespace std; // POD struct MyStruct {     int key;     string data; }; int main(

  14. นิพจน์แลมบ์ดาใน C ++ 11 คืออะไร

    C++ STL มีฟังก์ชันทั่วไปที่เป็นประโยชน์ เช่น std::for_each น่าเสียดายที่พวกเขาสามารถใช้งานได้ค่อนข้างยุ่งยาก โดยเฉพาะอย่างยิ่งหาก functor ที่คุณต้องการใช้นั้นไม่ซ้ำกับฟังก์ชันเฉพาะ ดังนั้นฟังก์ชันที่คุณจะสร้างนี้จะอยู่ในเนมสเปซนั้นเพียงแค่ถูกใช้ในที่เดียว วิธีแก้ไขคือใช้ฟังก์ชันที่ไม่ระบุตัวตน C++ ไ

  15. Aggregates และ POD ใน C ++ คืออะไร

    POD เป็นตัวย่อในภาษา C++ ซึ่งหมายถึงข้อมูลเก่าธรรมดา เป็นคลาส/โครงสร้างที่มีเฉพาะตัวแปรสมาชิก และไม่มีเมธอด ตัวสร้าง ตัวทำลาย ฟังก์ชันเสมือน ฯลฯ ตัวอย่างเช่น ตัวอย่าง #include<iostream> using namespace std; // POD struct MyStruct {    int key;    string data; }; int main()

  16. ขนาดของ int ชนิดยาวในมาตรฐาน C ++ คืออะไร

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

  17. เหตุใดการเข้าถึงอาร์เรย์นอกขอบเขตจึงไม่ทำให้เกิดข้อผิดพลาดใน C ++

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

  18. จะส่งผ่านวัตถุไปยังฟังก์ชันใน C ++ ได้อย่างไร?

    มีสี่วิธีในการส่งผ่านวัตถุไปยังฟังก์ชัน สมมติว่าคุณมีคลาส X และต้องการส่งต่อไปยังฟังก์ชันที่สนุก − ผ่านตามค่า สิ่งนี้จะสร้างสำเนาเฉพาะของวัตถุในขอบเขตของฟังก์ชัน สิ่งที่คุณแก้ไขที่นี่จะไม่ปรากฏในวัตถุที่ส่งผ่าน ตัวอย่างเช่น ประกาศ void fun(X x); การโทร X x; fun(x); ผ่านโดยการอ้างอิง สิ่งนี

  19. จะตรวจจับจำนวนเต็มล้นใน C ++ ได้อย่างไร

    วิธีเดียวที่ปลอดภัยคือการตรวจสอบการล้นก่อนที่จะเกิดขึ้น มีวิธีแฮ็กในการตรวจสอบจำนวนเต็มล้นแม้ว่า ดังนั้น หากคุณกำลังตั้งเป้าที่จะตรวจจับโอเวอร์โฟลว์ในส่วนเสริมที่ไม่ได้ลงนาม คุณสามารถตรวจสอบว่าผลลัพธ์นั้นน้อยกว่ามูลค่าเพิ่มหรือไม่ ตัวอย่างเช่น unsigned int x, y; unsigned int value = x + y; bool over

  20. ตัวดำเนินการจุลภาคทำงานอย่างไรใน C++

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

Total 5992 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:12/300  20-คอมพิวเตอร์/Page Goto:1 6 7 8 9 10 11 12 13 14 15 16 17 18