• C++


    默认构造函数:调用时不需要参数的构造函数

      1.在定义一个对象(实例化)时,没有提供初始化就会调用默认构造函数。

      2.若类没有定义任意构造函数,编译器自动生成默认构造函数。

      3.若定义了构造函数,没有定义默认构造函数,定义一个对象时,编译器报错(编译器不再提供默认构造函数)。

      4.有默认参数值得构造函数,也能当作默认构造函数。

      5.只有一个参数的构造函数可用于隐式类型转换,这需要特别注意。因为给需要一个该类型作为参数的函数传递一个值,编译器会隐式调用只有一个参数的构造函数把该值转换为一个类型。

      故一般把此类构造函数声明为explicit。

    副本构造函数:默认副本构造函数

      只要给函数按值传送对象,就会调用副本构造函数。

      副本构造函数必须接受同一类型的参数,且为const引用。

      创建对象时,不必显示调用副本构造函数。只要把对象作为一个参数按值传送给函数,编译器就会调用副本构造函数,制作对象的副本。

    默认初始化:

      在类定义中,仅包含函数的声明,默认的参数值应该放在声明中,而不是函数定义中。

    类中的const:

      声明为const的对象,只能调用const成员函数。

    类中的静态数据成员:

      1.在类的外部定义它,int Bpx::objectCount = 0;

      2.即使静态数据成员为私有的,也可以这么初始化,事实上这也是唯一的方式

      3.定义中不能使用static,

      4.定义语句放在Box.cpp文件中。

      5.static数据成员可以用const成员函数修改,因为不是对象的一部分,是属于类的。

    类的静态成员函数:

      1.不能声明为const,因为类的静态成员函数与类对象无关,故没有this指针,故不能使用const。

      2.静态成员函数不能访问调用它的对象,因为没有this指针。

      3.把同一个类的对象作为一个参数传递给静态成员函数,则该函数可以访问该对象(必须使用objectName.shuxingming;的方式来访问),且可以访问私有成员。

    const成员函数:

      声明为const的成员函数,在定义时也要声明为const。 

    const数据成员:

      只能通过构造函数的初始化列表来初始化类的引用数据成员。引用不能用赋值语句初始化。

    类的析构函数:

      1.析构函数没有参数,没有返回值

      2.类的析构函数只有一个。

      3.如果在对象中动态分配了内存,就必须实现该类析构函数。

  • 相关阅读:
    shell 网络状态查询 ping curl telnet
    shell 命令 rz sz
    shell 命令之 jps
    Python 之 threading
    根据 MySQL 状态优化 ---- 4. 临时表
    根据 MySQL 状态优化 ---- 3. key_buffer_size
    根据 MySQL 状态优化 ---- 2. 连接数
    根据 MySQL 状态优化 ---- 1. 慢查询
    Linux 服务器的网络配置
    Linux 服务器的网络配置
  • 原文地址:https://www.cnblogs.com/OrdinaryMiracle/p/4423629.html
Copyright © 2020-2023  润新知