您的位置:首页 > 汽车 > 新车 > 青海建筑人才网_国家工商局企业查询系统官网_汕头网站建设开发_自然搜索优化

青海建筑人才网_国家工商局企业查询系统官网_汕头网站建设开发_自然搜索优化

2025/1/14 12:12:56 来源:https://blog.csdn.net/weixin_55341642/article/details/145120897  浏览:    关键词:青海建筑人才网_国家工商局企业查询系统官网_汕头网站建设开发_自然搜索优化
青海建筑人才网_国家工商局企业查询系统官网_汕头网站建设开发_自然搜索优化

目录

内部类的概念

内部类的特征

sizeof(外部类) 的大小

内部类的实例化

内部类就是外部类的友元


内部类的概念

如果一个类定义在另一个类的内部,这个内部类就叫做内部类,内部类是一个独立的类,它不属于外部类,更不能通过外部类的对象去访问内部类的成员,外部类对内部类没有任何优越的访问权限

注意:内部类就是外部类的友元类,内部类可以通过外部类的对象参数来访问外部类中的所有成员,但是外部类不是内部类的友元


内部类的特征

1. 内部类可以定义在外部类的 pubilc、protected、private 都是可以的

2. 注意内部类可以直接访问外部类中的 static 成员,不需要外部类的对象/类名

3. sizeof(外部类) = 内部类,和内部类没有任何关系


sizeof(外部类) 的大小

代码演示:

class A
{
public:// 内部类class B{private:int _b;};private:int _a;
};

问:sizeof(A) 的大小

代码验证:

B 类只是受 A 类域和访问限定符的限制,其实他们是两个独立的类,所以 sizeof(A) 就只是计算 A 这个类的大小


内部类的实例化

代码演示:

A a1;A::B b1;

对于 A 这个外部类,直接实例化即可,但是 B 这个内部类要通过外部类 A 来指定才可以

以上是在类外面进行实例化的,但是如果把内部类设置为私有时,那么就只能在类里面访问


内部类就是外部类的友元

代码演示:

class A
{
public:// 内部类class B{public:// 内部类可以直接访问外部类的私有成员void Func(){A a1;a1._a = 1;}private:int _b;};private:int _a;
};

内部类默认就是外部类的友元,但是外部类不能直接访问到内部类的私有函数

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com