Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ความแตกต่างระหว่างมรดกส่วนตัว สาธารณะ และที่ได้รับการคุ้มครองใน C++


การซ่อนข้อมูลเป็นหนึ่งในคุณสมบัติที่สำคัญของ Object Oriented Programming ซึ่งช่วยป้องกันไม่ให้ฟังก์ชันของโปรแกรมเข้าถึงการแสดงข้อมูลภายในของประเภทคลาสโดยตรง การจำกัดการเข้าถึงสำหรับสมาชิกของคลาสนั้นระบุโดยตัวแก้ไขการเข้าถึงที่มีป้ายกำกับ:ส่วนสาธารณะ ส่วนตัว และส่วนที่มีการป้องกันภายในเนื้อหาของคลาส

การเข้าถึงเริ่มต้นสำหรับสมาชิกและชั้นเรียนเป็นแบบส่วนตัว

โค้ดตัวอย่าง

class Base {
   public:
      // public members go here
   protected:
      // protected members go here
   private:
      // private members go here
};

สมาชิกสาธารณะสามารถเข้าถึงได้จากทุกที่นอกชั้นเรียน แต่ภายในโปรแกรม คุณสามารถตั้งค่าและรับค่าของตัวแปรสาธารณะโดยไม่ต้องมีสมาชิกใดๆ

ไม่สามารถเข้าถึงตัวแปรหรือฟังก์ชันของสมาชิกส่วนตัวได้ หรือแม้แต่ดูจากภายนอกชั้นเรียน เฉพาะฟังก์ชันชั้นเรียนและเพื่อนเท่านั้นที่สามารถเข้าถึงสมาชิกส่วนตัวได้

ตัวแปรหรือฟังก์ชันของสมาชิกที่ได้รับการป้องกันนั้นคล้ายกับสมาชิกส่วนตัวมาก แต่ให้ประโยชน์เพิ่มเติมอย่างหนึ่งที่สามารถเข้าถึงได้ในคลาสย่อยที่เรียกว่าคลาสที่ได้รับ