9.变量的命名规范

9.变量的命名规范


9.1 知识点

必须遵守的规则

  • 不能重名:同一语句块中变量名不能重复。
  • 不能以数字开头:变量名不能以数字开头。
  • 不能使用程序关键字命名:变量名不能与关键字冲突。
  • 不能有特殊符号:变量名不能包含特殊符号(下划线 _ 除外)。

建议的命名规则

  • 变量名要有含义:尽量使用英文(或拼音)来描述变量的作用。

示例:

int nian_ning = 1;
string ming_zi = "2";

不建议的命名规则

  • 用汉字命名:虽然技术上可行,但不推荐。

示例:

string 我的名字 = "韬老狮";
cout << 我的名字 << endl; // 输出:韬老狮

常用的命名规范

驼峰命名法

  • 首字母小写,之后单词首字母大写。
  • 常用于变量、函数命名。

示例:

string myName = "韬老狮";
string yourMotherName = "你的妈妈的名字";

帕斯卡命名法

  • 所有单词的首字母都大写。
  • 常用于类名命名。

示例:

string MyName = "韬老狮";
string YourMotherName = "你的妈妈的名字";

下划线命名法

  • 单词之间用下划线隔开。
  • 常用于变量、函数命名,尤其在 C++ 中。

示例:

string my_name = "韬老狮";
string your_mother_name = "你的妈妈的名字";

匈牙利命名法

  • 在变量名前加上表示类型或用途的前缀。
变量类型前缀
  • intn
  • floatf
  • charc
  • boolb
  • stringstr

示例:

int nMyAge = 18;
cout << nMyAge << endl; // 输出:18

string strMyName = "韬老狮";
用途类型前缀
  • 全局变量 → g_
  • 静态变量 → s_
  • 类成员变量 → m_

示例:

int g_myGlobalVariable = 100; // 全局变量
static int s_myStaticVariable = 50; // 静态变量
int m_myMemberVariable = 30; // 类成员变量

前缀下划线命名法

  • 在私有变量前加上下划线 _

示例:

int _myAge = 18;

潜在知识点:C++ 对大小写敏感

C++ 中变量名是区分大小写的。以下变量是不同的:

int Nian_Ning = 1;
int i = 1;
int I = 1;

9.2 知识点代码

Lesson09_变量的命名规范.cpp

#include <iostream>
using namespace std;
int main()
{
    std::cout << "变量的命名规范\n";

    #pragma region 知识点一 必须遵守的规则

    //1.不能重名(同一语句块中)
    //2.不能以数字开头
    //3.不能使用程序关键字命名
    //4.不能有特殊符号(下划线等符号除外)


    //建议的命名规则:变量名要有含义——>用英文(拼音)表示变量的作用
    int nian_ning = 1;
    string ming_zi = "2";

    //非常不建议的命名规则:用汉字命名
    string 我的名字 = "韬老狮";
    cout << 我的名字 << endl;//韬老狮

    #pragma endregion

    #pragma region 知识点二 常用的命名规范

    // 1.驼峰命名法——首字母小写,之后单词首字母大写(变量,函数)—— C++中常用
    string myName = "韬老狮";
    string yourMotherName = "你的妈妈的名字";

    // 2.帕斯卡命名法——所有单词首字母都大写(类)
    string MyName = "韬老狮";
    string YourMotherName = "你的妈妈的名字";

    // 3.下划线命名法——单词之间用下划线隔开(变量、函数)—— C++中常用
    string my_name = "韬老狮";
    string your_mother_name = "你的妈妈的名字";

    // 4.匈牙利命名法——在变量前加上一个表示类型的前缀或表示用途的前缀 (变量)
    //   变量类型前缀常用规则:
    //   int——>n
    //   float——>f
    //   char——>c
    //   bool——>b
    //   string——>str
    //   等等
    int nMyAge = 18;
    cout << nMyAge << endl;//18
    string strMyName = "韬老狮";
    //   用途类型前缀常用规则:
    //   全局变量——>g_
    //   静态变量——>s_
    //   类成员变量——>m_
    //   等等
   
    // 5.前缀下划线命名法——在私有变量前加上_(私有变量)
    int _myAge = 18;

    //潜在知识点——C++中对大小写是敏感的 是区分的
    int Nian_Ning = 1;
    int i = 1;
    int I = 1;

    #pragma endregion
}

9.3 练习题

下面的变量名哪些是错误的?

UE5               No.1                    3day
$money        discount_ 1          Shang Hai
class              int                        _a_b_c_
main         _   2C                        cin
  • 正确的变量名

    int UE5 = 1;         // 变量名以字母开头,符合C++变量命名规范,但建议采用更规范的命名方式。
    int _a_b_c_ = 1;     // 以下划线开头,后续由字母、数字和下划线组成,符合C++变量命名规则。
    int main = 1;        // 虽然合法,但“main”是C++的程序入口函数名,不建议作为普通变量名使用。
    int cin = 1;         // 虽然合法,但“cin”是标准库中的预定义名称,不应作为变量名使用。
    
  • 错误的变量名

    // int No.1 = 1;         // 错误,变量名中不能包含特殊符号如“.”。
    // int 3day = 1;         // 错误,变量名不能以数字开头。
    // int $money = 1;       // 错误,变量名一般不以“$”开头,且不符合C++常规命名习惯。
    // int discount_ 1 = 1;  // 错误,变量名中不能有空格。
    // int Shang Hai = 1;    // 错误,变量名不能包含空格。
    // int class = 1;        // 错误,“class”是C++的关键字,不能作为变量名。
    // int int = 1;          // 错误,“int”是C++的关键字,不能作为变量名。
    // int _ 2C = 1;         // 错误,变量名中不能有空格。
    

按照驼峰命名法命名以下变量(使用英文)

  • 中文变量名称
    我的年龄、我的性别、我的攻击力、我的防御力、你的身高、你的体重

  • 驼峰命名法

    int myAge = 18;             // 我的年龄
    bool mySex = false;         // 我的性别,false 代表男,定义规则。
    int myAtk = 100;            // 我的攻击力
    int myDef = 200;            // 我的防御力
    float yourHeight = 180.5f;  // 你的身高
    float yourWeight = 80.5f;   // 你的体重
    

9.4 练习题代码

Lesson09_练习题.cpp

#include <iostream>
using namespace std;
int main()
{
    cout << "变量的命名规范练习题\n";

    #pragma region 练习题一
    //下面的变量名哪些是错误的?
    //UE5               No.1                    3day
    //$money        discount_ 1          Shang Hai
    //class              int                        _a_b_c_
    //main         _   2C                        cin

    int UE5 = 1; //正确,变量名以字母开头,符合C++变量命名规范,不过通常建议采用更规范的命名方式比如驼峰命名等
    // int No.1 = 1; //错误,变量名中不能包含像“.”这样的特殊符号,变量名应是由字母、数字和下划线组成的连续字符序列
    // int 3day = 1; //错误,变量名不能以数字开头,在C++中变量名需以字母或下划线开头
    // int $money = 1; //错误,变量名一般不以“$”符号开头,在C++常规变量命名里不使用这样带“$”的形式,变量名应由字母、数字和下划线构成
    // int discount_ 1 = 1; //错误,变量名中不能有空格,空格属于非法字符,变量名要保证是连续的合法字符组成
    // int Shang Hai = 1; //错误,变量名不能有空格,C++变量名里不允许出现空格来分隔内容
    // int class = 1; //错误,“class”是C++中的关键字,用于定义类,不能作为普通变量名使用
    // int int = 1; //错误,“int”是C++中表示整数类型的关键字,不能当作变量名来定义变量
    int _a_b_c_ = 1; //正确,以下划线开头,后续由字母、数字和下划线组成,符合C++变量命名规则
    int main = 1; //正确,但是“main”在C++中是一个特殊的函数名(程序入口函数),通常不建议作为普通变量名使用,容易造成混淆
    // int _ 2C = 1; //错误,变量名中不能有空格,应是连续的合法字符组合
    int cin = 1; //正确,但是“cin”是C++标准输入流对象,属于标准库中预定义的名称,类似于关键字的性质,不应该作为变量名使用

    #pragma endregion

    #pragma region 练习题二

    //按照驼峰命名法命名以下变量(使用英文)
    //我的年龄、我的性别、我的攻击力、我的防御力、你的身高、你的体重

    int myAge = 18;
    bool mySex = false;//false代表男 自己定的规则
    //int mySex2 = 0;
    //string mySex3 = "男";
    int myAtk = 100;
    int myDef = 200;
    float yourHeight = 180.5f;
    float yourWeight = 80.5f;

    #pragma endregion

}


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

×

喜欢就点赞,疼爱就打赏