C ++中的类具有公共,私有和受保护的节,其中包含相应的类成员。
不能从类外部访问私有数据成员。只能通过类或友元函数访问它们。默认情况下,所有类成员都是私有的。
类中的受保护成员类似于私有成员,但是派生类或子类可以访问它们,而私有成员则不能。
演示类中的私有成员和受保护成员的程序如下:
#include <iostream> using namespace std; class Base { public : int a = 8; protected : int b = 10; private : int c = 20; }; class Derived : public Base { public : void func() { cout << "The value of a : " << a; cout << "\nThe value of b : " << b; } }; int main() { Derived obj; obj.func(); return 0; }
输出结果
上面程序的输出如下。
The value of a : 8 The value of b : 10
现在,让我们了解以上程序。
在Base类中,数据成员分别是a,b和c,它们分别是公共的,受保护的和私有的。给出的代码片段如下。
class Base { public : int a = 8; protected : int b = 10; private : int c = 20; };
派生类继承基类。该函数func()
打印a和b的值。它不能打印c的值,因为c的值是Base类专用的,并且不能在Derived类中访问。给出的代码片段如下。
class Derived : public Base { public : void func() { cout << "The value of a : " << a; cout << "\nThe value of b : " << b; } };
在该函数中main()
,创建了Derived类的对象obj。然后func()
调用该函数。给出的代码片段如下。
int main() { Derived obj; obj.func(); return 0; }