【发布时间】:2022-12-14 18:13:10
【问题描述】:
在 C++ 中,通常使用某种前缀来命名成员变量,以表明它们是成员变量,而不是局部变量或参数。如果您有 MFC 背景,您可能会使用 m_foo。我也偶尔看到myFoo。
C#(或可能只是 .NET)似乎建议只使用下划线,如 _foo。这是 C++ 标准允许的吗?
【问题讨论】:
-
请注意,对这些规则的无知并不一定意味着您的代码将无法编译或运行,但很可能您的代码将无法移植到不同的编译器和版本,因为不能保证不会有名称冲突。为了支持这一点,我知道一个重要系统的某些实现一直将 _ 大写字母用作命名约定。那里没有错误。当然这是不好的做法。
标签: c++ naming-conventions standards c++-faq