zoukankan      html  css  js  c++  java
  • 读书笔记之:C++Primer 第4版(ch1214)

    第12章 类
    1. 构造函数
     类的构造函数一般使用一个初始化列表来初始化对象的数据成员。
    2. 成员函数
     在类内部声明成员函数是必须的,而定义成员函数则是可选的。在类内部定义的函数默认为inline。而在类外部定义的成员函数必须指明它们是在类的作用域内。
    成员函数有一个附加的隐含实参,将函数绑定到调用函数的对象。这个隐含的实参其实是this指针。对像的this指针并不是对象本身的组成部分,它不占对象的内存空间,在每次非static成员函数调用对象的时候,this指针作为隐藏的第一个参数由编译器传递给对象。
    将关键字const 加在形参表之后,就可以将成员函数声明为常量:
    如:
      double avg_price() const;

    const成员不能改变其所操作的对象的数据成员。const必须同时出现在声明和定义中,若只出现在一处,就会出现一个编译时错误
    3. 数据抽象与封装


    4. 类的声明与定义
    类的定义放在头文件件中是一个很好的做法。
    可以声明一个类而不定义它:
    如:class Screen;
    这个声明也称为前向声明,在声明之后定义之前,这个类是一个不完全类型,即已知类型却不知道包含哪些成员。
    5. 类对象
    定义类是定义了一种新的类型,定义了类型之后就可以定义该类型的对象。定义对象的时候要为对象分配存储空间,但定义类型的时候是不进行存储分配的。
    6. 类成员的显示初始化
      对于没有定义构造函数并且其全体数据成员均是public的类可以采用与初始数组元素相同的方式初始化其成员。
      这个地方所说的其实就是struct。在C++中struct和class一样都是定义一个类。在C++中允许这种形式的初始化其实就是为了对C程序实现兼容。
      因为在C中可以对struct进行显示的初始化。

    构造函数

    友元  

    Static成员变量和成员函数

    第13章 复制控制

    每种类型,无论是内置类型还是类类型,都对该类型对象的一组操作的含义进行了定义。每种类型还定义了创建该类型的对象时会发生什么——构造函数定义了该类 型对象的初> 始化。类型还能控制复制、赋值或撤销该类型的对象时会发生什么——类通过特殊的成员函数:复制构造函数、赋值操作符和析构函数类控制这些行为。

    1. 复制构造函数

    1. 赋值操作

    1. 析构函数

    第14章 重载操作符与转换

  • 相关阅读:
    docker安装minio
    详解nohup /dev/null 2>&1 含义的使用
    CentOS7系统更换yum Repo源
    centos7运行yum报如下提示:Run "yum repolist all" to see the repos you have
    linux安全篇:禁止频繁访问的ip访问nginx
    Nginx 添加防爬虫
    Nginx 加载conf.d (内文件***.conf)
    rabbitMq消费死循环
    RabbitMq安装(单点与集群)rabbitMq以及状态查询
    rabbitMq内存与磁盘分配问题
  • 原文地址:https://www.cnblogs.com/xkfz007/p/2603366.html
Copyright © 2011-2022 走看看