1.关键字public可以将类的成员说明为是公有的,及可以被该类的所有成员所访问; 2.关键字private可以将类的成员说明为是私有的,它不能直接被对象访问。 其实,说白了就是对于公有成员,我们可以利用对象来进行直接调用,比如说: 1 2 3 4 5 6 7 8 9 10 11 12 13 classCat { public: intweight; }; intm...
为了实现成员访问控制,我们在公有成员函数MyClass_public_func1中调用了私有成员函数obj->private_func(...
//derivedObj.b_base_protected = 1; // KO, 对象不能访问类的protected成员(public方式继承的protected成员,在派生类中仍为protected成员) derivedObj.c_base_public = 1; // OK, 对象可以访问类的public成员(public方式继承的public成员,在派生类中仍为public成员) cout << derivedObj.getA() << endl; /...
} // 设置私有成员的值 void setPrivateValue(PrivateStruct* obj, int value) { obj->priva...
公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。 1. 公有继承(public) 公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。
public下面的是公有成员,对象外的所有程序都能访问这些成员,private下的是私有成员,只有对象内部可以访问。以数组类为例,如果我们要自己设计一个数组类,提供插入Insert、删除Remove等操作。那么Insert和Remove作为这个类的函数就应该用public,否则使用这个数组类的程序就无法使用这些功能。在实现这个数组类...
(1)基类的公有成员和保护类型成员在派生类中为保护成员。 (2)基类的私有成员在派生类中不能被直接访问。 可以看的出来,派生类里的成员函数可以访问基类的公有成员和保护成员,但在类外通过派生类对象则无法访问它们。同样,无论派生类里的成员函数还是通过类对象都无法访问基类中的私有成员。
2.使用protected继承时,派生类内部可以访问基类中public和protected成员,并且类外也不能通过派生类的对象访问基类的成员(可以在派生类中添加公有成员函数接口间接访问基类中的public和protected成员)。 (1)基类的public成员在派生类中变为protected成员。 (2)基类的protected成员在派生类中依然是protected成员。
鸡啄米这里插一句本应属于“类成员的访问控制”中的话,通过对象访问类的成员属于外部访问,只能访问类的公有成员。 派生类的继承方式为public,即公有继承时,对基类中的公有成员和保护成员的访问属性都不变,而对基类的私有成员则不能访问。具体说,就是基类的公有成员和保护成员被继承到派生类中以后同样成为派生类...
private:用来指定私有成员。一个类的私有成员,不论是成员变量还是成员函数,都只能在该类的成员函数内部才能被访问。 public:用来指定公有成员。一个类的公有成员在任何地方都可以被访问。 protected:用来指定保护成员。 因此,class中定义的函数是可以被其他地方调用的,来试一试吧!