Ẩn dữ liệu là một trong những tính năng quan trọng của Lập trình hướng đối tượng cho phép ngăn các chức năng của chương trình truy cập trực tiếp vào biểu diễn bên trong của một kiểu lớp. Giới hạn truy cập đối với các thành viên của lớp được chỉ định bởi các công cụ sửa đổi quyền truy cập được gắn nhãn - các phần công khai, riêng tư và được bảo vệ trong phần thân lớp.
Quyền truy cập mặc định cho các thành viên và lớp học là riêng tư.
Ví dụ
class Base { public: // public members go here protected: // protected members go here private: // private members go here };
Thành viên công cộng có thể truy cập từ bất kỳ đâu bên ngoài lớp học nhưng trong một chương trình. Bạn có thể đặt và lấy giá trị của các biến công khai mà không cần bất kỳ thành viên nào.
Một biến hoặc hàm thành viên riêng không thể được truy cập, hoặc thậm chí được xem từ bên ngoài lớp. Chỉ các chức năng lớp học và bạn bè mới có thể truy cập các thành viên riêng tư.
Một biến hoặc hàm thành viên được bảo vệ rất giống với thành viên private nhưng nó cung cấp thêm một lợi ích là chúng có thể được truy cập trong các lớp con được gọi là lớp dẫn xuất.