zoukankan      html  css  js  c++  java
  • 第三篇:确保对象在被使用前的初始化

    前言

           某个对象若不被初始化,意味着它的执行很有可能导致不确定的结果,这是我们的代码所要坚决避免的情况。

           本文将讲解 C++ 代码中关于对象初始化的方方面面。

    成员变量的初始化

           当我们构造一个对象的时候 (不含初始化列表),在进入构造函数之前,其实所有成员变量已经被其所属类型的默认构造函数给初始化了,内置类型则不做任何处理。

           因此,如果你想在构造函数里初始化成员变量,这可未必是个好主意。更好的方法应当是在构造函数的成员初始化列表里对成员变量进行初始化,这样可以避免重复的初始化工作。但请记得在列表中对所有,所有的成员都进行初始化。同时请保证初始化顺序和成员变量声明顺序的一致,这是个好习惯。

           至于 const 或者 引用类型的成员变量,就更不用说了 - 必须用初始化列表的方式初始化,没得选。

           关于成员初始化列表的使用细则,请自行查阅有关 C++ 书籍。

    小结

           以正确的方式对对象进行初始化对程序的运行效率,资源节省大有裨益。

  • 相关阅读:
    appium之adb常用命令
    测试基础之等价类
    selenium之CSS定位
    括号序列的最小代价
    Spark相对于MapReduce的优势
    Cache系统设计
    [京东2017实习生笔试] 终结者C
    [京东2017实习生笔试] 通过考试
    [hihoCoder] 1078. 线段树的区间修改
    [转载] 一步一步理解线段树
  • 原文地址:https://www.cnblogs.com/muchen/p/6353733.html
Copyright © 2011-2022 走看看