rzjy123 2022-03-03 10:50 采纳率: 85.7%
浏览 19
已结题

默认初始化:当我们在块作用域内不使用任何初始值定义一个非静态变量时

c++primer,262页,7.5.3节,默认构造函数的作用讲到,默认初始化,当我们在块作用域内不使用任何初始值定义一个非静态变量时,发生默认初始化,我的问题是在块作用域外不也是默认初始化吗,为什么要强调在块作用域内?
还有,未被显式定义的话,内置类型在函数体内部是不是默认初始化?第40页讲到,这样的情况是不被初始化,那不被初始化是不是默认初始化的一种?我看百度上讲的也糊里糊涂,有人说不被初始化不属于默认初始化,我看这样讲是错的,默认初始化和值初始化都讲不明白,每个概念都要靠猜,一句话讲明白的几个小时都搞不懂,这书的概念讲的真是太烂了,理解不了可以慢慢看,东西是什么都不讲明白没法看

  • 写回答

1条回答 默认 最新

  • hfhua 2022-03-03 11:03
    关注

    首先是存储方式不一样。其次 你每次用类新建对象时,普通变量都要重新初始化,而static的变量是所有对象共有的属性,如果在一个对象中改变static,其他对象中该变量也会改变,而普通变量是属于各自对象(也就是说每个对象都有各自的值)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月25日
  • 已采纳回答 3月17日
  • 创建了问题 3月3日

悬赏问题

  • ¥15 fluent的在模拟压强时使用希望得到一些建议
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退