C++派生访问说明符小记(推荐)

如下所示:

为阜平等地区用户提供了全套网页设计制作服务,及阜平网站建设行业解决方案。主营业务为成都网站设计、成都做网站、阜平网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

#include <iostream> 

using namespace std; 

class a{
protected:
	int i;
private:
	int j;
public:
	int k;
};



class b:public a{//派生访问说明符对派生类内对其直接基类的访问没有影响,主要是用于控制派生类用户(包括派生类的派生类)对基类成员的访问权限
	friend void f1(a a1){
		cout<<a1.i;//错误,派生类的成员或友元不能访问基类对象protected成员(protected特性)
		cout<<a1.j;//错误,派生类不能访问基类private成员
		cout<<a1.k;//正确
	}
	friend void f1(b b1){
		cout<<b1.i;//正确,派生类可以通过派生类对象访问基类protected成员
		cout<<b1.j;//错误,派生类不能访问基类private成员
		cout<<b1.k;//正确
	}
	void f2(a a1){
		cout<<a1.i;//错误,派生类的成员或友元不能访问基类对象protected成员(protected特性)
		cout<<a1.j;//错误,派生类不能访问基类private成员
		cout<<a1.k;//正确
	}
	void f2(b b1){
		cout<<b1.i;//正确,派生类可以通过派生类对象访问基类protected成员
		cout<<b1.j;//错误,派生类不能访问基类private成员
		cout<<b1.k;//正确
	}
	void f3(){
		cout<<i;//正确,派生类可直接访问基类protected成员
		cout<<j;//错误,派生类不能访问基类private成员
		cout<<k;//正确
	}
};
class c:private a{}
class e:protected a{}

class f:public c{
	void f4(){
		cout<<k;//出错,原因是f的直接基类c由a private派生
	}
}

int main() 
{	
	f f1;
	b b1;
	cout<<f1.k;//出错,原因是f的直接基类c由a private派生
	system("pause");
	return 0; 
} 

以上这篇C++派生访问说明符小记(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持创新互联。

网页标题:C++派生访问说明符小记(推荐)
转载源于:https://www.cdcxhl.com/article8/isppip.html

成都网站建设公司_创新互联,为您提供响应式网站动态网站网站制作网页设计公司电子商务网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都seo排名网站优化