首页 > 文章列表 > C++ 函数命名的匈牙利式命名法

C++ 函数命名的匈牙利式命名法

c++ 匈牙利命名法
323 2024-11-07

匈牙利式命名法是一种 C++ 命名约定,通过使用前缀(表示类型)和后缀(表示用途)来指定变量、函数和类型的类型信息。其优点包括可读性强、易于调试和维护。但缺点在于冗长、视觉杂乱和可能模棱两可,因此需要谨慎使用。

C++ 函数命名的匈牙利式命名法

C++ 函数命名的匈牙利式命名法

匈牙利式命名法是一种命名约定,用于在 C++ 代码中指定变量、函数和类型的类型信息。该约定使用前缀来表示数据的类型,后缀来表示数据的用途或意图。

前缀

前缀类型
m_成员变量
i_整数
f_浮点数
sz_大小
p_指针
obj_对象
arr_数组
str_字符串
bool_布尔值

后缀

后缀用途
In输入参数
Out输出参数
Helper辅助函数
Get取值函数
Set设值函数
Create创建函数
Destroy销毁函数

实战案例

考虑以下类:

class Person {
public:
    Person(const std::string& name, int age);
    void PrintInfo() const;

private:
    std::string m_name;
    int m_age;
};

使用匈牙利式命名法,该类的构造函数和成员函数可以改写为:

class Person {
public:
    Person(const std::string& str_Name, int i_Age);
    void PrintInfo() const;

private:
    std::string m_name;
    int m_age;
};

优势

  • 可读性强:函数名称清晰地传达了它们的参数类型和用途。
  • 易于调试:前缀可以帮助识别变量类型从而加速调试。
  • 代码维护性:匈牙利式命名法有助于保持代码风格一致性,便于协作。

缺点

  • 冗长:前缀和后缀会使函数名称变得冗长。
  • 视觉杂乱:过多的前缀和后缀可能会使代码难以阅读。
  • 模棱两可:某些前缀和后缀的含义可能因上下文的不同而有所不同。

结论

匈牙利式命名法是 C++ 中一种有效的命名约定,但应谨慎使用以避免代码可读性差或维护性差。