zoukankan      html  css  js  c++  java
  • 21天学通C++_Day2

    继续学习,今天满课,相对学习内容较少,下面罗列内容:

    0、常量

    ▪字面常量;

    ▪使用关键字const声明的常量,const double Pi = 22.0/7;  //后面有分号,跟定义变量一样

    ▪使用关键字constexpr声明的常量表达式,constexpr double GetPi() {return 22.0/7;}  //中间有空格,和#define格式一致

    ▪使用关键字enum声明的枚举常量,

    enum RainbowColors

    {

      Violet = 0,  //第一个枚举值指定为0(默认也为0),后面枚举值编译器认为依次加1

      Blue,  

      Red

    };  //后面分号一定要有

    RainbowColors MyColor = Blue;

    ▪使用#define定义的常量(已摒弃,不推荐),#define Pi 3.14286

      摒弃理由:#define是一个预处理器编译指令,让编译器对定义的值进行文本替换。然而,它不是类型安全的,是一种原始的常量定义方式,应避免使用。

    1、为何应给变量赋初值?

    有时候,需要根据变量的值(通常是核实它不为零)做条件处理,如果不对变量进行初始化,这样的逻辑将不可靠,因为未赋值或初始化的变量包含的内容是随机的

    2、关于全局变量

    应用程序的任何地方都可修改值,导致代码不稳定,所以不要为图简单使用全局变量。

    3、unsigned int变量值为0,减1后结果如何?

    环绕到可存储的最大值!所以,要在定义类型时就考虑清楚!

    4、数组

    C++编译器不会检查索引是否在数组的范围内,访问数组时,如果超越其边界,结果是无法预料的。很多情况下会崩溃。所以,要避免出现这种“篱笆柱错误”。

    ▪多维数组:C++可以模拟多维数组,但存储数组的内存仍为一维的。

    ▪动态数组:

    vector<int> Dynarr (3);

    int Num = 3;

    Dynarr.push_back(Num);  //使用push_back()将Num压入到矢量中,而这个矢量动态地调整其长度,以存储更多数据

    注:使用到了动态数组类 std::vector,需要包含头文件  #include <vector>

    明天继续!

  • 相关阅读:
    sqlalchemy学习-- 重要参数
    sqlalchemy 学习-- 多表操作
    sqlalchemy 学习--单表操作
    python 获取命令行参数
    subline 相关
    semver 版本号命名法
    nginx四层负载nginx七层负载,nginx基于nginx-sticky会话保持.
    nginx知识点汇总
    Kubernetes操作图
    redis安装和基础使用
  • 原文地址:https://www.cnblogs.com/Big-Rabbit/p/4364381.html
Copyright © 2011-2022 走看看