Access modifier C++

      Comments Off on Access modifier C++

1. Mặc định nếu không chỉ rõ thì biến và phương thức sẽ là được mặc định khai báo là private.

class A{
   int a;// private
};

3 từ khóa phạm vi:
– Từ khóa private: Chỉ có thể truy cập trong bản thân lớp đó. Lớp con cũng không kế thừa được member đó.
– Từ khóa protected: Truy cập được trong bản thân lớp đó + Lớp con ( cho phép kế thừa)
– Từ khóa public: Có phép everyone truy cập.

Access modifier inheritance
public: Giữ nguyên, cha thế nào thì con như thế.
protected: Cái gì kế thừa được thì thành protected hết.
private: Mọi thứ đều thành private.

Code:

class A{
  public: int x;
  protected: int y;
  private: int z;
};

class B: public A{
  // public int x
  // protected int y
};

class C: protected A{
  //protected int x 
  //protected int y
};

class D: A{
  //private int x 
  //privae int y 
};

Mặc định: class sẽ kế thừa 1 cách private còn struct sẽ kế thừa 1 cách public.

struct B: /* public */ A {};
class B: /* private */ A {};