zoukankan      html  css  js  c++  java
  • 第6章 初始化与清除

      用构造函数确保初始化

      在一个对象被定义时:

        X a;
    

      这时就好像a是一个int一样:为这个对象分配内存。但是当程序执行到a的序列点执行的点时,构造函数自动被调用,因为编译器已悄悄地在a的定义点处插入了一个X::X()的调用。就像其他成员函数被调用一样。传递到构造函数的第一个(秘密)参数是this指针,也就是调用这一函数的对象的地址,不过,对构造函数来说,this指针指向一个没有被初始化的内存块,构造函数的作用就是正确的初始化该内存块。

     

      默认构造函数

       记住,一旦有了构造函数,编译器就会确保不管在什么情况下它总会被调用。

     

      默认的构造函数非常重要,所以当一个结构或类中没有构造函数时,编译器会自动为它创建一个。如:

        class V {
        int i;  // private
        };      // No constructor
    
        int main() {
        V v,v2[10];
        }

      然而,一旦有构造函数而没有默认构造函数,上面的对象定义就会产生一个编译错误。

  • 相关阅读:
    百度搜索技巧
    phpstorm知识点
    A-Z
    边框
    display
    布局
    盒模型
    浮动
    字体与图标
    pselect 问题
  • 原文地址:https://www.cnblogs.com/sheshiji/p/3427691.html
Copyright © 2011-2022 走看看