บทความนี้เป็นตัวอย่างโดยละเอียดการสาธิตฟังก์ชั่นเสมือนจริงใน C ++ ฉันหวังว่าด้วยการแนะนำบรรณาธิการของช่องทางเทคโนโลยีที่ไม่ถูกต้องเราสามารถเข้าใจวิธีการใช้งานได้อย่างละเอียด เพื่อนที่ต้องการสามารถอ้างถึงสิ่งต่อไปนี้
คำอธิบายโดยละเอียดของอินสแตนซ์ของฟังก์ชั่นเสมือนจริงที่แก้ไขแล้วใน C ++
【 1 】โปรแกรม 1
#include <Iostream> การใช้ namespace std; ฐานคลาส {สาธารณะ: void void print () const = 0;}; การทดสอบคลาส: ฐานสาธารณะ {สาธารณะ: void print ();}; void test :: print () {cout << "test :: print ()" << endl; // รวบรวมข้อผิดพลาด! // pchild-> print ();}【 2 】โปรแกรม 2
#include <Iostream> การใช้ namespace std; ฐานคลาส {สาธารณะ: void void print () const = 0;}; การทดสอบคลาส: ฐานสาธารณะ {สาธารณะ: void print (); เป็นโมฆะ print () const;}; การทดสอบโมฆะ :: print () {cout << "การทดสอบ :: print ()" << endl;} การทดสอบโมฆะ :: print () const {cout << "การทดสอบ :: print () const" << endl;} void main () {base* pchild = ใหม่ pchild-> print ();}/*test :: print () const*/【 3 】โปรแกรม 3
#include <Iostream> การใช้ namespace std; ฐานคลาส {สาธารณะ: void void print () const = 0;}; การทดสอบคลาส: ฐานสาธารณะ {สาธารณะ: void print (); เป็นโมฆะ print () const;}; การทดสอบโมฆะ :: print () {cout << "การทดสอบ :: print ()" << endl;} การทดสอบโมฆะ :: print () const {cout << "การทดสอบ :: print () const" << endl;} void main () {base* pchild = ใหม่ pchild-> print (); Const Test OBJ; obj.print (); ทดสอบ OBJ1; obj1.print (); ทดสอบ* pown = การทดสอบใหม่ (); pown-> print ();}/*test :: print () consttest :: print () consttest :: print () consttest :: print () test :: print ()*//หมายเหตุ: ทุกอย่างอยู่ในรหัส
สรุป: const ปรับเปลี่ยนฟังก์ชั่นสมาชิกซึ่งเป็นหมวดหมู่ของฟังก์ชั่นการโอเวอร์โหลด
ขอบคุณสำหรับการอ่านคำอธิบายโดยละเอียดของตัวอย่างการสาธิตของฟังก์ชั่นเสมือนจริงใน C ++ ฉันหวังว่ามันจะช่วยคุณได้ ในเวลาเดียวกันฉันขอขอบคุณสำหรับการสนับสนุนของคุณจากช่องเทคโนโลยีใหม่ที่ถูกหรือผิด!