zoukankan      html  css  js  c++  java
  • c++ 字节,宏定义和内存泄漏的问题

    7.1:
    宏定义和操作符的区别?
    (1)宏定义是C语言提供的预处理功能之一,这三种处理分别是宏定义,文件包含和条件编译。
    宏定义是替换,不做计算也不做表达式求解,不占内存和编译时间,造作符占用时间计算。

    宏定义如何展开?
    宏定义展开就是用宏定义的宏体去替代指代宏指令名,并且用实际参数去一一取代形式参数。

    7.2:
    include的使用
    头文件在<>里面代表是系统头文件,一般系统通过环境变量查到
    ""使用的头文件自定义的头文件一般是在指定的目录下面去查找

    包含头文件的时候如何查找头文件
    用户自定义的头文件,编译器首先会在用户目录下去查找,然后再安装目录下查找,最后Linux和UNIX通过环境变量去查找

    7.3:内存分配
    (1)野指针的问题
    我们在声明指针的时候:记得初始化

    int *p = NULL; int *p = new int(5); //

    (2) 申请内存之后要释放回收,并且释放之后该指针最好也要进行NULL

    (3) 函数返回的指针类型我们要进行判断


    7.4:C++中数据类型的长度

    数据长度系统有关系的:32位 64位
    1、整形:int、long

    2、字符型:char、wchar_t

    3、布尔型:bool

    4、浮点型:float、double

    char < short < int < float < double 类型

    short 2 - 4

    bool 类型 1个字节
    char 类型通常占据一个字节,对于用于扩展字符集的wchar_t类型,需要占据两个字节。
    bool占据一个字节
    float占据4个字节,double是float的两倍即8个字节
    指针字节长度计算原理其实跟int差不多,一个指针的位数和操作系统的位数是相等的,即32位系统应该是4个字节,
    64位系统应该是8个字节
    short、int和long类型都表示整型值,存储空间的大小不同。一般,short类型为半个机器字长(word)长,
    int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机器中int类型和long类型通常字长是相同的)。
    sizeof()函数进行测试判断字节长度

    7.5 如何释放内存和分配内存
    new delete 申请和释放单个连续变量的空间
    new[] []delete 申请和释放多个连续变量的空间


    7.6:虚函数和纯虚函数
    什么是虚函数,作用?
    纯虚函数和虚函数有什么区别?

    虚函数是大多是为了实现动态链接,父类指针变量指向基类的指针,调用自己的方法。虚函数目的就是为了基类用来实现多态性。
    纯虚函数:纯虚函数是抽象类的表示,类似公有接口的编写。纯虚函数用于抽象类,本身是不能生成对象的。

    虚函数是纯虚函数的一个子集。

    virtual void area( int i, int j ) = 0; 纯虚函数

  • 相关阅读:
    正则表达式
    运算符重载 hash原理 Equals方法
    接口 类型转换 try-catch(学习笔记)
    综合练习:词频统计
    组合数据类型综合练习
    Python基础综合练习
    熟悉常用的Linux操作
    大数据概述
    递归下降分析法
    有穷状态自动机
  • 原文地址:https://www.cnblogs.com/love-life-insist/p/12800826.html
Copyright © 2011-2022 走看看