导航
|
23 |
24 |
25 |
26 |
27 |
28 |
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
16
|
17
|
18
|
19
|
20
|
21
|
22
|
23
|
24
|
25
|
26
|
27
|
28
|
29
|
30
|
31
|
1
|
2
|
3
|
4
|
5
|
统计
- 随笔 - 6
- 文章 - 4
- 评论 - 0
- 阅读 -
323
- 从内存角度:结构体为值类型,存在栈中。类为引用类型,存在堆中。
- 从声明角度:不存在静态结构体,可以有静态类。
- 从修饰角度:结构体成员只能公开化(public),类可公开可私有(private、protected)
- 从成员角度:结果不可用自己为成员,可能导致死循环,且不可以初始化,类可以自己为成员,可以初始化。
- 从构造角度:结构体不可以显示的声明无参构造,若要显示声明,必须将所有成员属性初始化,不可以声明析构函数。类可以显示声明无参构造,成员可初始化不全,当显示声明有参构造时,默认的无参构造将会不存在,达到规范书写的目的,但注意的是在继承中建议写上无参构造避免不必要的问题。
- 从垃收角度:结构体不可以声明析构函数。类可以声明析构函数。
- 从继承角度:结构体不可以作为基类,但可以实现接口。类可以作为基类和派生类,可以实现接口。(单继承)
- 从使用角度:结构体一般用于数据相关比较多,类用于操作相关比较多。当选择结构体时会减少垃圾回收。
- 结构体和类都具有面向对象封装的思想,结构体不具备继承,相对来说使用频率较少。但它的使用还是很有意思的,比如Mathf就是一个结构体。
点击右上角即可分享
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix