当前位置: 首页 > news >正文

c++-内部类

概念

如果一个类定义在另一个类的内部,这个内部类就叫做内部类内部类是一个独立的类,
它不属于外部类

特性

1.不能通过外部类的对象去访问内部类的成员。外部类对内部类没有任何优越的访问权限。
2.内部类就是外部类的友元类,参见友元类的定义,内部类可以通过外部类的对象参数来访
问外部类中的所有成员。但是外部类不是内部类的友元。
3.内部类可以定义在外部类的public、protected、private都是可以的。
4. 注意内部类可以直接访问外部类中的static成员,不需要外部类的对象/类名。如果外部类中的static成员和内部类的成员变量名字冲突也不会报错,优先使用内部类的成员变量,如果想使用外部类的static成员直接使用类名访问即可。
5.sizeof(外部类)=外部类,外部类的大小和内部类毫无关系。

 

使用

class A
{
private:static int k;int h;
public:class B // B天生就是A的友元{public:int k = 5;void foo(const A& a){cout << A::k << endl;//OKcout << a.h << endl;//OK}};
};
int A::k = 1;
int main()
{A::B b;b.foo(A());return 0;
}
http://www.xdnf.cn/news/1099423.html

相关文章:

  • 网络安全初级
  • python正则表达式(小白五分钟从入门到精通)
  • 技术学习_检索增强生成(RAG)
  • 客户频繁问询项目进度,如何提高响应效率
  • STM32中DMA(直接存储器访问)详解
  • 基于 SpringBoot + Vue 的 IT 技术交流和分享平台的设计与实现
  • Git保姆级入门实战:从安装配置到常用命令与常见错误解决
  • 机器学习 YOLOv5手绘电路图识别 手绘电路图自动转换为仿真软件(如LT Spice)可用的原理图,避免人工重绘
  • upload-labs靶场通关详解:第21关 数组绕过
  • H5微应用四端调试工具—网页版:深入解析与使用指南
  • Java 枚举详解:从基础到实战,掌握类型安全与优雅设计
  • 青岛门卫事件后:高温晕厥救援技术突破
  • Transformer:自注意力驱动的神经网络革命引擎
  • PLC框架-1.3.2 报文750控制汇川伺服的转矩上下限
  • 位运算算法题
  • arm架构,arm内核,处理器之间的关系
  • STM32F103之ModBus\RS232\RS422\RS485
  • 记录今天学习Comfyui的感受
  • 【运维架构】云计算运维架构师与基础设施,技术路线,Linux证书(标准化/定制化/CNCF,公有云/混合云/私有云)
  • pharokka phold--快速噬菌体注释工具
  • 1.1.1数据类型与变量——AI教你学Django
  • 一文讲清楚React Hooks
  • Spring for Apache Pulsar->Reactive Support->Quick Tour
  • 【C++】——类和对象(上)
  • C语言<数据结构-链表>
  • Django专家成长路线知识点——AI教你学Django
  • 深度学习参数初始化方法详解及代码实现
  • WebSocket实战:实现实时聊天应用 - 双向通信技术详解
  • [数据结构与算法] 优先队列 | 最小堆 C++
  • C语言——预处理详解