10.常量

10.常量


10.1 知识点

常量是什么

常量是指在程序执行过程中,其值不能被改变的变量。大部分常量在声明时都必须被初始化。

关键点

  • 必须初始化
  • 不能被修改

在 C++ 中有多种常量,我们这里先学习最简单的 const 常量。

const 常量

关键字 const

const 是用于声明常量的关键字,表示该变量的值在初始化后不能被修改。

固定写法

const 常量类型 变量名 = 初始值;

作用

主要用来声明一些常用的不变的变量。

变量的声明示例

普通变量可以被多次赋值:

int i;
i = 2;
i = 17;
cout << i << endl;  // 输出: 17

常量的声明示例

必须初始化

常量在声明时必须初始化:

const int i2 = 1;

不能被修改

试图修改常量的值会导致编译错误:

// i2 = 2; // 错误:常量不能被修改

声明常量示例

声明常量 π(PI)

π 是一个数学常量,通常用来表示圆周率,值约等于 3.1415926:

const double PI = 3.1415926;

10.2 知识点代码

Lesson10_常量.cpp

#include <iostream>
using namespace std;
int main()
{
    std::cout << "常量\n";

    #pragma region 知识点一 常量是什么

    //常量是指在程序执行过程中其值不能被改变的变量,大部分的常量在声明时都必须被初始化
    //关键点:
    //1.必须初始化
    //2.不能被修改

    //在C++中有多种常量,我们在这里先来学习最简单的const常量

    #pragma endregion

    #pragma region 知识点二 const常量

    //关键字 const

    //固定写法
    //  const 常量类型 变量名 = 初始值;

    //作用
    //  主要用来声明一些常用的不变的变量

    //变量的声明
    int i;
    i = 2;
    i = 17;
    cout << i << endl;

    //常量的声明
    //1.必须初始化
    const int i2 = 1;
    //2.不能被修改
    //i2 = 2;

    //声明常量π
    //π PI 3.1415926
    const double PI = 3.1415926;

    #pragma endregion
}

10.3 练习题

常量有什么特点?

  1. 必须被初始化
  2. 不能被修改
  3. 我们可以通过 const 关键字进行常量的声明
    在变量声明前加上 const 关键字(必须初始化赋值)
const int i = 10;

请简述你觉得在游戏开发中常量会用来干什么?

  • 一般是用来声明不会变化的“变量”。
  • 示例:
    • 圆周率 (PI)
    • 角度转弧度、弧度转角度
    • 重力加速度
    • 一些数学定理、公理、性质中的不变变量

这些都可以用常量进行声明,之后直接参与计算即可。

  • 举例:
    如果游戏中玩家最大血量是不变的,可以使用常量来表示。

10.4 练习题代码

Lesson10_练习题.cpp

#include <iostream>
using namespace std;
int main()
{
    std::cout << "常量练习题\n";

    #pragma region 练习题一

    //常量有什么特点?
    //1.必须被初始化
    //2.不能被修改
    //3.我们可以通过const关键字进行常量的声明
    //  在变量声明前 加上 const关键字 (必须初始化赋值)
    const int i = 10;

    #pragma endregion

    #pragma region 练习题二

    //请简述你觉得在游戏开发中常量会用来干什么?
    // 一般是用来声明不会变化的"变量"的
    // PI 角度转弧度 弧度转角度 重力加速度 
    // 一些数学定理、公理、性质中的不便的变量 都可以用常量去进行声明 之后直接参与计算即可

    // 比如你的游戏比较特殊 玩家最大血量是不变的 

    #pragma endregion
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏