• C++基础 (1) 第一天 C++相对C的改进 命名空间 引用


    第一天

    语法 STL 数据结构  设计模式…

    2 C++语言的间接

    C++ = C语言+面向对象

    本贾尼

    语言分类:

    不关心效率 只关心架构:java/脚本语言

    效率:(内存要自己管理了,操作指针)C++

    3 C++的hello

    4 C++的命名空间

    5  C++对C语言的增强-全局变量-struct-函数检测

    6 bool类型

    7 c++对三目运算符的增强

    C++中

    返回的是a的别名a

     

    //  举例(a<b? a: b) =30

    这句话 在C语言编译器中报错”表达式不能做左值”

    因为在C语言编译器中,表达式最终返回的是一个数值 而不是一个地址

    在C++中就不会报错,C++中表达式 返回的是a变量的别名

    (语法糖

    8 三目运算分作为左值需要注意

    9 const增强

    真正的常量

    (在 C++中 就不会报错

    10 const 和#define的区别

    define和const的阶段不一样 define是预处理器 const是编译器处理的

    11枚举类型的增强

    12中午回顾

    namespace 关键字

    Boolean类型 只要赋值为非0 就是1

    C语言会报错 C++不会报错

    13 引用的基本概念

    14 引用作为函数参数

    15 引用的本质

    编译器在取值和赋值的时候自动做了&和*的操作 本质是一个常指针

    结论:

    // 在研究引用的时候,可以将引用理解为一个 常指针

    // 在理解的引用的时候,可以将引用理解为一个变量的别名 (否则读代码的时候容易懵

    有大小 4字节 必须初始化 不能被改变

    16 引用作为函数返回值

    当函数的返回值 是一个局部变量的引用的时候 不能再用引用来接收

    因为 局部变量执行完之后 值会被销毁

    (注意值传递和 用 引用接受的区别)

    17 引用作为函数返回值可以当左值

    当引用作为函数的返回值的时候,只要这个引用是合法的,就可以当左值

    传统的二级指针的方法

    使用引用

    19 const引用

    注意指针p指向常量的时候临时开辟了一个空间

    字面量:

    … 

    https://zh.wikipedia.org/wiki/%E5%AD%97%E9%9D%A2%E5%B8%B8%E9%87%8F_(C%E8%AF%AD%E8%A8%80)#%E7%94%A8%E6%88%B7%E5%AE%9A%E4%B9%89%E7%9A%84%E5%AD%97%E9%9D%A2%E9%87%8F

    字面量:寄存器中临时存的一个数值,计算后放到内存中,它就没了

    结论: 如果想对一个字面量做引用的话,只能用const的引用

     

  • 相关阅读:
    7-1 城市间紧急救援 (25 分)(最短路径:斯特拉算法)
    常见的MD5碰撞
    PHP常见绕过(更新ing)
    7-10 旅游规划 (25 分)
    杂记:用python向网页提交数据
    python学习日记
    NOIP2018提高组金牌训练营——搜索专题
    noip复习之拓扑排序
    NOIP2018提高组金牌训练营——字符串专题
    NOIP2018提高组金牌训练营——数论专题
  • 原文地址:https://www.cnblogs.com/eret9616/p/10512680.html
Copyright © 2020-2023  润新知