我觉得每个人都很好地了解了c ++技术规则:答案是肯定的。让我们抛开传统和事实,即这1个特殊功能是特殊的和标志性的,它包含在此基础上不变的有效点。
通常,我觉得很少讨论选择的哲学,因此想对此事提供一个观点,因为我认为这对于要求这样做的原因很重要。
对我来说,这个问题涉及在一般情况下用代码表达英语的选择。似乎您对速记说明感到不安,特别是如果速记键落在外观相似的文本上。但是,在您的示例中,将argn更改为n_of_args只会完成将一种类型的速记方式更改为另一种形式的速记方式,而无需增加实际值:澄清或其他可见属性。
单词“ number”已被字母“ n”代替。
如果您通过反短手的手法来更改短手名,那么这样的事情似乎更合适:
main(int argumentsCount,char ** argumentsVector)
我一直在思考两件事:根据事物的本质和/或隐含的用法来命名事物。将其命名为argumentsVector对我来说是多余的,因为双重间接**隐含了作为矢量的属性。因此,我编写代码的更好的方法是:**参数。
有人会说名为argumentCount的变量被声明为int,并且Count不能为负,但是您可以具有负的int {unsigned is better}。
同样,它的含义和用法在此解释中起作用。如果是计数,那么我认为它永远不会是负数。毕竟,您怎么能拥有-2个苹果。我会说,你欠两个苹果。如果它是数字,那么我希望有一个否定的情况。这就是为什么附加词“ of”可能对您很重要的原因。那个,也许是集合所指的数字,意味着一个特定的项目,而不是集合本身的属性。即:argumentsNumber = 5表示一个特定的参数,但不包括numberOfArguments。
main(int maxArgumentsIndex,char ** arguments)。
这消除了歧义。将其称为索引可消除否定情况下的歧义,并描述其含义以及如何使用它。它也通过英语措辞暗示了max是一个绝对值,编写修改该值的代码(应该为const)会觉得很奇怪。“参数”在这里很有意义,因为它是复数形式,描述了它是什么,以及应该如何使用它。即使这样解释也可能很危险,因为Index是Count / NumberOf的-1。5个参数得出maxIndex为4!
任何其他功能,我将完全使用:
无效函数(const unsigned int maxArgumentsIndex,const char ** arguments)
并非所有情况都需要长手描述符。实际上,有时候空手可以提高可读性,尤其是在编写数学类(例如Vec3f,矩阵,四元数等)的情况下……我几乎总是会尝试匹配数学语言而不是语言。 。浮动x,y,z vrs。float xComponent之类的。
我了解所有这些都是样式选择,但是从长远来看,意识到这些选择确实会有所帮助。我保证当数组不是以复数形式编写时,经验丰富的程序员会感到烦恼,但是再次,main是存在的一种特殊散文;)