zoukankan      html  css  js  c++  java
  • C++自学笔记(3)

    类和对象

    对象

    具体指代一个事物

    • 为了便于管理,将信息抽象。

    • 目的不同,抽象的信息也不同(选择性暴露),也就是封装。
    • 通过访问限定符,选择想要暴露和隐藏的信息。

    对象实例化

    计算机根据一个类的设计,制造出多个对象的过程

    两种方式

    1. 从栈中实例化

    1. 从堆中实例化

    注意:从堆中实例化需要申请与释放内存

    对象成员的访问

    • 从栈中实例化对象后,可以通过点来访问
    • 从堆中实例化对象后,需要通过指针访问

    初识string

    • 初始化string对象的方式

    • string的常用操作。

    *需要注意,string的一种连接方式是错误的。

    类外定义

    • 类内定义:成员函数的函数体写在类的内部。

    特点:编译器会将其优先编译成内联函数

    • 类外定义分为两种:同文件类外定义份文件类外定义
    1. 同文件类外定义:成员函数体与类在同一个函数中,但不在类中。

    1. 份文件类外定义:新建一个cpp文件,将成员函数体与类份文件存放。

    构造函数

    内存区域

    构造函数

    在对对象初始化时,为了避免忘记调用初始化函数,或多次重复调用,需要采用构造函数。将初始化代码写在构造函数内,就可以起到初始化的作用,构造函数在实例化对象时只会被调用一次。

    *默认构造函数:在实例化对象时不需要传递参数的构造函数

    初始化列表

    • 构造函数后用冒号隔开
    • 对多个数据成员初始化时中间要用逗号隔开
    • 赋值是要用括号而不能用等号

    特性:

    *初始化列表的必要性:如果参数被const修饰,是不能够被构造函数初始化的,但是可以通过初始化列表对其进行初始化。

    拷贝构造函数

    析构函数

    • 任务:归还系统资源,收拾最后残局
    • 定义格式:~类名()
    • 析构函数的特性:

    对象的生命历程

  • 相关阅读:
    信息收集-DNS
    Xshell下载
    JSP
    本地网络配置
    P1485 火枪打怪
    P4155 [SCOI2015]国旗计划
    P1017 [NOIP2000 提高组] 进制转换
    P1013 [NOIP1998 提高组] 进制位
    P1011 [NOIP1998 提高组] 车站
    CF841B Godsend
  • 原文地址:https://www.cnblogs.com/Wjianting/p/5207542.html
Copyright © 2011-2022 走看看