关注
1. 非局部静态变量
- **静态存储持续时间的变量**(包括全局变量、静态变量、静态类成员等)的初始化顺序遵循它们定义的顺序,并且具体顺序还取决于它们所在的编译单元(即源文件)。
- 在同一个源文件中,全局变量按照它们的定义顺序进行初始化。
- 如果变量跨多个文件,它们的初始化顺序取决于文件被编译器处理的顺序,这可能导致所谓的“静态初始化顺序问题”。
2. 局部静态变量
- 局部静态变量(在函数或块内部定义的静态变量)在控制流第一次经过变量定义时初始化,这称为“懒惰初始化”或“按需初始化”。
- 这种方式确保了局部静态变量在第一次使用前被初始化,无论函数何时或从何处被调用。
3. 类成员变量
- **非静态成员变量**的初始化顺序严格按照它们在类中声明的顺序,不论它们在构造函数初始化列表中出现的顺序如何。
- **构造函数初始化列表**中提供的初始化器用于给这些成员变量提供初始值。
4. 继承顺序
- 如果类是从一个或多个类继承而来,基类的构造函数总是在派生类的任何成员初始化之前调用。
- 当有多个基类时,基类的构造调用顺序与它们在类定义中的声明顺序一致。
查看原帖
点赞 评论
相关推荐
04-10 17:18
南阳理工学院 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 这个offer值得去吗? #
38935次浏览 250人参与
# 工作压力大,你会干什么? #
81883次浏览 703人参与
# 在爱玛,骑向未来 #
43415次浏览 431人参与
# 如果春招能重来,我会___ #
32713次浏览 320人参与
# 什么专业适合考公 #
69135次浏览 336人参与
# 除了线上,还能去哪些地方投简历 #
17660次浏览 147人参与
# 机械人,说说你的烦心事 #
147981次浏览 1158人参与
# 工作后,你落下了哪些病根 #
42116次浏览 292人参与
# 携程笔试 #
173651次浏览 916人参与
# 毕业季,给职场新人一些建议 #
220616次浏览 2595人参与
# 职场新人体验 #
192409次浏览 1239人参与
# 你上一次加班是什么时候? #
157177次浏览 822人参与
# 你被哪些公司挂了? #
197282次浏览 1075人参与
# 选offer应该考虑哪些因素 #
172131次浏览 1054人参与
# 机械人,秋招第一次笔试的企业是哪家? #
103157次浏览 704人参与
# 你觉得哪一届的校招最难? #
440577次浏览 3261人参与
# 听到哪句话代表面试稳了OR挂了? #
156353次浏览 838人参与
# 记录我的毕业季 #
6225次浏览 149人参与
# 你觉得技术面多长时间合理? #
187332次浏览 1226人参与
# 来聊聊你目前的求职进展 #
765348次浏览 7053人参与
# 华为池子有多大 #
179323次浏览 938人参与