หน้าแรก
หน้าแรก
ในส่วนนี้ เราจะมาดูกันว่าอะไรคือความแตกต่างระหว่าง *ptr++, *++ptr และ ++*ptr ใน C++ ที่นี่เราจะเห็นลำดับความสำคัญของ postfix++ และ prefix++ ใน C หรือ C++ ลำดับความสำคัญของคำนำหน้า ++ หรือ -- มีลำดับความสำคัญสูงกว่าตัวดำเนินการ dereference * และ postfix ++ หรือ -- มีลำดับความสำคัญสูงกว่าทั้งคำนำหน้า
ตัวชี้แบบห้อย ตัวชี้แบบห้อยคือตัวชี้ที่ชี้ไปยังตำแหน่งหน่วยความจำที่ว่าง (หรือถูกลบ) มีหลายวิธีที่ Pointer ทำหน้าที่เป็นตัวชี้แบบห้อย เรียกฟังก์ชัน ตัวชี้ที่ชี้ไปที่ตัวแปรในเครื่องจะห้อยต่องแต่งเมื่อตัวแปรในเครื่องไม่คงที่ int *show(void) { int n = 76; /* ... */ return &n; } ผลลัพ
เป็นไฟล์ส่วนหัว ไฟล์นี้มีไลบรารีมาตรฐานทั้งหมด บางครั้งในการแข่งขันเขียนโค้ดบางรายการ เมื่อเราต้องประหยัดเวลาในการแก้ปัญหา การใช้ไฟล์ส่วนหัวนี้จะเป็นประโยชน์ ในแนวทางวิศวกรรมซอฟต์แวร์ เราควรลดการย่อเล็กสุดรวม การใช้ไฟล์ส่วนหัวนี้จะรวมไฟล์จำนวนมาก ซึ่งบางครั้งอาจไม่จำเป็นในโปรแกรม ดังนั้นจึงอาจเพิ่ม
ไลบรารีมาตรฐาน C++ มีชุดความสามารถอินพุต/เอาต์พุตมากมาย ซึ่งเราจะเห็นในบทต่อๆ ไป บทนี้จะกล่าวถึงการดำเนินการ I/O พื้นฐานและทั่วไปส่วนใหญ่ที่จำเป็นสำหรับการเขียนโปรแกรม C++ C++ I/O เกิดขึ้นในสตรีม ซึ่งเป็นลำดับของไบต์ หากไบต์ไหลจากอุปกรณ์ เช่น แป้นพิมพ์ ดิสก์ไดรฟ์ หรือการเชื่อมต่อเครือข่าย ฯลฯ ไปยัง
ตัวประมวลผลล่วงหน้าคือคำสั่ง ซึ่งให้คำแนะนำแก่คอมไพเลอร์เพื่อประมวลผลข้อมูลล่วงหน้าก่อนเริ่มการรวบรวมจริง คำสั่งตัวประมวลผลล่วงหน้า pAll เริ่มต้นด้วย # และมีเพียงอักขระช่องว่างเท่านั้นอาจปรากฏขึ้นก่อนคำสั่งตัวประมวลผลล่วงหน้าในบรรทัด คำสั่งตัวประมวลผลล่วงหน้าไม่ใช่คำสั่ง C++ ดังนั้นจึงไม่ได้ลงท้ายด
โครงสร้างการตัดสินใจกำหนดให้โปรแกรมเมอร์ระบุเงื่อนไขอย่างน้อยหนึ่งเงื่อนไขที่จะประเมินหรือทดสอบโดยโปรแกรม พร้อมกับคำสั่งหรือคำสั่งที่จะดำเนินการหากเงื่อนไขถูกกำหนดให้เป็นจริง และทางเลือกอื่น ๆ ที่จะดำเนินการถ้าเงื่อนไข ถูกกำหนดให้เป็นเท็จ ต่อไปนี้เป็นรูปแบบทั่วไปของโครงสร้างการตัดสินใจทั่วไปที่พบใน
ในส่วนนี้ เราจะมาดูวิธีการรันส่วน if และ else พร้อมกันในโค้ด C หรือ C++ วิธีแก้ปัญหานี้ค่อนข้างยุ่งยาก เมื่อ if และ else ถูกดำเนินการทีละรายการ มันเหมือนกับการรันคำสั่งที่ไม่มี if-else แต่ในที่นี้เราจะมาดูกันว่าพวกเขามีวิธีดำเนินการอย่างไรกันบ้าง โค้ดตัวอย่าง #include 5) { lebel_1:cout <
ตัวแปรอ้างอิงคือนามแฝง นั่นคือชื่ออื่นสำหรับตัวแปรที่มีอยู่แล้ว เมื่อการอ้างอิงเริ่มต้นด้วยตัวแปรแล้ว อาจใช้ชื่อตัวแปรหรือชื่ออ้างอิงเพื่ออ้างถึงตัวแปรได้ ข้อมูลอ้างอิงเทียบกับตัวชี้ การอ้างอิงมักจะสับสนกับพอยน์เตอร์ แต่ความแตกต่างที่สำคัญสามประการระหว่างการอ้างอิงและพอยน์เตอร์คือ - คุณไม่สามารถ
นี่เป็นตัวอย่างง่ายๆ ในการส่งตัวชี้และส่งต่อโดยอ้างอิง - ผ่านตัวชี้ #include <iostream> using namespace std; void swap(int* a, int* b) { int c = *a; *a= *b; *b = c; } int main() { int m = 7, n = 6; cout << "Before Swap
พอยน์เตอร์ พอยน์เตอร์ใช้สำหรับเก็บแอดเดรสของตัวแปร ไวยากรณ์ Type *pointer; การเริ่มต้น Type *pointer; pointer = variable name; ข้อมูลอ้างอิง เมื่อตัวแปรถูกประกาศเป็นข้อมูลอ้างอิง ตัวแปรนั้นจะกลายเป็นชื่อทางเลือกสำหรับตัวแปรที่มีอยู่ ไวยากรณ์ Type &newname = existing name; การเริ่มต้น Type &
ข้อมูลอ้างอิง เมื่อตัวแปรถูกประกาศเป็นข้อมูลอ้างอิง ตัวแปรนั้นจะกลายเป็นชื่อทางเลือกสำหรับตัวแปรที่มีอยู่ ไวยากรณ์ Type &newname = existing name; เริ่มต้น Type &pointer; pointer = variable name; พอยน์เตอร์ พอยน์เตอร์ใช้สำหรับเก็บแอดเดรสของตัวแปร ไวยากรณ์ Type *pointer; การเริ่มต้น Type *po
Binary Heap เป็นต้นไม้ไบนารีที่สมบูรณ์ซึ่งก็คือ Min Heap หรือ Max Heap ใน Max Binary Heap คีย์ที่รูทจะต้องสูงสุดในบรรดาคีย์ทั้งหมดที่มีอยู่ใน Binary Heap คุณสมบัตินี้ต้องเป็นจริงแบบเรียกซ้ำสำหรับโหนดทั้งหมดในทรีไบนารีนั้น Min Binary Heap คล้ายกับ MinHeap คำอธิบายฟังก์ชัน: โมฆะ BHeap::Insert(int ele
Binary Heap เป็นต้นไม้ไบนารีที่สมบูรณ์ซึ่งก็คือ Min Heap หรือ Max Heap ใน Max Binary Heap คีย์ที่รูทจะต้องสูงสุดในบรรดาคีย์ทั้งหมดที่มีอยู่ใน Binary Heap คุณสมบัตินี้ต้องเป็นจริงแบบเรียกซ้ำสำหรับโหนดทั้งหมดใน Binary Tree Min Binary Heap คล้ายกับ MinHeap อัลกอริทึม สำหรับ max_heap: Begin &nb
Binary Heap เป็นต้นไม้ไบนารีที่สมบูรณ์ซึ่งก็คือ Min Heap หรือ Max Heap ใน Max Binary Heap คีย์ที่รูทจะต้องสูงสุดในบรรดาคีย์ทั้งหมดที่มีอยู่ใน Binary Heap คุณสมบัตินี้ต้องเป็นจริงแบบเรียกซ้ำสำหรับโหนดทั้งหมดใน Binary Tree Min Binary Heap คล้ายกับ Min Heap อัลกอริทึม สำหรับ min_heap(): Begin
ตัวสร้างคลาสเป็นฟังก์ชันสมาชิกพิเศษของคลาสที่ดำเนินการทุกครั้งที่เราสร้างวัตถุใหม่ของคลาสนั้น ตัวสร้างจะมีชื่อเหมือนกันทุกประการกับคลาส และไม่มีประเภทการส่งคืนเลย แม้กระทั่งเป็นโมฆะ ตัวสร้างมีประโยชน์อย่างมากในการตั้งค่าเริ่มต้นสำหรับตัวแปรสมาชิกบางตัว ตัวอย่างต่อไปนี้อธิบายแนวคิดของคอนสตรัคเตอร์
พิจารณาสถานการณ์เมื่อเรามีบุคคลสองคนที่มีชื่อเดียวกันคือซาร่าในชั้นเรียนเดียวกัน เมื่อใดก็ตามที่เราต้องการแยกความแตกต่าง เราจะต้องใช้ข้อมูลเพิ่มเติมพร้อมกับชื่อของพวกเขา เช่น พื้นที่นั้นๆ หากพวกเขาอาศัยอยู่คนละพื้นที่ หรือชื่อแม่หรือพ่อ เป็นต้น สถานการณ์เดียวกันอาจเกิดขึ้นในแอปพลิเคชัน C ++ ของคุณ
ใช่ เนมสเปซสามารถซ้อนกันใน C ++ เราสามารถกำหนดเนมสเปซหนึ่งเนมสเปซภายในเนมสเปซอื่นได้ดังนี้ − ไวยากรณ์ namespace namespace_name1 { // code declarations namespace namespace_name2 { // code declarations } } คุณสามารถเข้าถึงสมาชิกของเนมสเปซที่
ในส่วนนี้เราจะมาดูวิธีการเรียงลำดับอัลกอริธึมใน C++ sorted array isan array ซึ่งแต่ละองค์ประกอบถูกจัดเรียงตามลำดับเช่นตัวเลขตัวอักษร ฯลฯ มีอัลกอริธึมมากมายในการจัดเรียงอาร์เรย์ตัวเลขเช่น bubblesort, การเรียงลำดับการแทรก, การเรียงลำดับการเลือก, การเรียงลำดับผสาน, การเรียงลำดับอย่างรวดเร็ว, การเรียงลำ
ในส่วนนี้เราจะมาดูกันว่าเราสามารถจัดเรียงอาร์เรย์หรือรายการที่เชื่อมโยงโดยใช้ไลบรารีมาตรฐานของ C ++ ได้อย่างไร ใน C ++ มีไลบรารีต่างๆ มากมายที่สามารถใช้เพื่อวัตถุประสงค์ที่แตกต่างกัน การคัดแยกเป็นหนึ่งในนั้น ฟังก์ชัน C++ std::list::sort() จัดเรียงองค์ประกอบของรายการโดยเรียงลำดับจากน้อยไปมาก ลำดับขอ
การอนุมานประเภทหรือการหักหมายถึงการตรวจจับประเภทข้อมูลของ anexpression โดยอัตโนมัติในภาษาการเขียนโปรแกรม เป็นคุณลักษณะที่มีอยู่ในภาษาที่พิมพ์อย่างแน่นหนาบางภาษา ใน C ++ มีการใช้คำสำคัญอัตโนมัติ (เพิ่มใน C ++ 11) สำหรับการหักประเภทอัตโนมัติ ตัวอย่างเช่น คุณต้องการสร้างตัววนซ้ำเพื่อวนซ้ำเวกเตอร์ คุณสา