C++和C#的编码标准

本文关键字:编码 标准 C++ | 更新日期: 2023-09-27 18:29:30

我有一个相当理论化的问题。我的公司有一个关于C++的工作标准(有文档记录),它相当广泛,但在C#方面几乎不存在,唯一的指示是编码标准应该遵循微软的C#风格指南。MSDN确实有指导方针,但这导致我们公司代码中两种语言的代码之间存在很大差异。

以下是我们为C++制定的一些编码标准(请注意,这并不是什么新鲜事):

  1. 类成员名称应以m_开头,并以驼色大小写进行,即bool m_isValid;

  2. 方法参数应以_开头,即在骆驼式void Foo(bool _isValid); 情况下继续

  3. 局部变量为规则骆驼情况,即bool isValid;

这使得在读取长函数时代码可读性很强,因为您可以立即知道什么是成员,什么是参数,什么是局部变量。

现在说到C#。。。通常的做法是对三个人都采用骆驼式。它更难阅读,你必须将鼠标悬停在变量上或点击它才能知道它是哪一个

如果这是你的决定,你会为两种语言强制执行相同的编码标准吗?你会强制执行大部分相同的编码标准吗?或者你会采用不同的语言不同的标准方法?

谢谢。。。

C++和C#的编码标准

如果这是你的决定,你会为两种语言强制执行相同的编码标准吗?

绝对不是。我会遵循C#的常规惯例。如果你试图让一种语言中的代码看起来像另一种语言的代码,你很可能也会开始使用该语言中的习语。。。最后说的是带有C++口音的C#。

这使得在读取长函数时代码可读性很强

因此,尽可能避免创建长方法。。。我很少发现让所有三种变量使用相同的约定是一个问题,而无论使用什么约定,长方法都会很痛苦。

我在不同的公司工作过,有些喜欢匈牙利符号,有些不喜欢。编码风格更多的是一个意见问题,所以我会做最适合你和你的团队发展的事情。