Logo th.boatexistence.com

เทมเพลตเป็นภาษา c++ หรือไม่

สารบัญ:

เทมเพลตเป็นภาษา c++ หรือไม่
เทมเพลตเป็นภาษา c++ หรือไม่
Anonim

C ไม่มีเทมเพลตเช่น C++ แม้ว่าคุณจะสามารถทำสิ่งที่คล้ายคลึงกันได้ด้วย "ฉลาด" (หรือ WTFey ขึ้นอยู่กับว่าคุณมองอย่างไร) โดยใช้มาโคร define. อย่างไรก็ตาม ลองดูว่า GLib ทำได้อย่างไรสำหรับรายการที่เชื่อมโยงเดี่ยวหรือรายการที่เชื่อมโยงเป็นสองเท่า

ทำไมเราต้องมีเทมเพลตในภาษา C

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

C มีเทมเพลตกี่แบบ

ตัวเลือกที่ถูกต้อง: C

มี แม่แบบสองประเภท เป็นเทมเพลตฟังก์ชันและเทมเพลตคลาส

ฉันจะใส่คลาสเทมเพลตได้ที่ไหน

วิธีแก้ปัญหาทั่วไปคือการเขียนการประกาศเทมเพลต ในไฟล์ส่วนหัว จากนั้นปรับใช้คลาสในไฟล์การใช้งาน (เช่น. tpp) และรวมการใช้งานนี้ ไฟล์ที่ส่วนท้ายของส่วนหัว

C++ เพิ่มเทมเพลตเมื่อใด

ไลบรารีเทมเพลตมาตรฐาน ซึ่งเริ่มพัฒนาแนวคิดใน 1979 ก็รวมอยู่ด้วย ในปี พ.ศ. 2546 คณะกรรมการได้ตอบสนองต่อปัญหาหลายอย่างที่มีการรายงานตามมาตรฐานปี 2541 และแก้ไขตามนั้น ภาษาที่เปลี่ยนถูกขนานนามว่า C++03