我必须为老板的演示文稿编写代码。最终,技术人员和软件工程师会查看代码。他想让我完善它,让它看起来很专业(我看起来不专业吗??)所以我必须做必须做的事情。
考虑这种写作风格:
class ClassName // capital letter
{
private:
int var1, var2; // small letter no underscore
double var3;
std::string var4;
protected: // no protected data
public:
ClassName() {}
ClassName(int _var1, int _var2) // definition should be in .h but I will just right it here now
{
this->var1 = _var1; // underscored parameters
this->var2 = _var2;
}
};
我敢打赌这编译不会有问题,但是当涉及到变量命名、带下划线的前缀、类结构等时,会有很多冲突的资源。我做了一些研究,这让我更加困惑。我知道,归根结底,这只是一种基于意见的风格或个人观点,但我只有 SO 社区来解决这个问题,我仍然相信在某个地方有一个指南或标准:
- 建议的布局说明“私有类变量应具有下划线后缀”
- 规则中关于下划线状态的高度评价答案“永远不要用下划线开始变量”并且接受的答案状态“所有带下划线的变量都是保留的”
- 命名约定中接受的答案指出“在 C++ 中,下划线通常表示私有成员变量”
- 在前导下划线的含义中,我看到构造函数的参数有下划线
- cpp 变量命名声明“ _SUM:C++ 语言中允许第一个位置的下划线”
另一种风格是:
class className // small letter
{
private:
int m_var1, m_var2; // m and underscored
double m_var3;
std::string m_var4;
// no protected section at all
public:
className();
className(int var1, int var2) // should be just prototype in .h and definition in .cpp but I will write here for now
{
this->m_var1 = var1; // no naming style for parameters
this->m_var2 = var2;
}
};
最新的问题/答案可能是 5 岁(这并不重要)。但我想查看有关此问题的费率和答案。何时使用_variable
?何时使用variable_
?何时使用variable
?何时使用m_variable
?即使我没有数据(如“空” protected
),我是否应该始终遵循类结构?变量和类名何时以及为什么是大写或小写?专业程序员/开发人员将如何编写上述示例代码?
“添加了 C#,因为我认为这两种语言在这个问题上具有相同的标准”