阅读量:1
在C++中,protected关键字用于声明类的成员属性和方法,这些成员可以被类的派生类访问,但是不能被类的对象直接访问。
在使用protected关键字时,可以在类的内部和派生类中访问被声明为protected的成员。示例如下:
class Base { protected: int protectedVar; public: Base() { protectedVar = 10; } void printProtectedVar() { cout << "Protected Variable: " << protectedVar << endl; } }; class Derived : public Base { public: void modifyProtectedVar() { protectedVar = 20; cout << "Modified Protected Variable: " << protectedVar << endl; } }; int main() { Base obj; obj.printProtectedVar(); // 在类的成员函数中访问protected成员 Derived derivedObj; derivedObj.modifyProtectedVar(); // 在派生类的成员函数中访问protected成员 return 0; }
在这个示例中,Base类中声明了一个protected成员变量protectedVar,并且定义了一个成员函数printProtectedVar来访问该成员变量。Derived类继承自Base类,并且定义了一个成员函数modifyProtectedVar来修改protectedVar的值。在main函数中,分别创建了Base类的对象obj和Derived类的对象derivedObj,并调用了对应的成员函数来访问和修改protected成员。