我有两个课程,一个约会课程和一个日历课程。日历类有一组约会对象。约会数组名称是否应该是复数?IE:
appointment[] appointment;
或者
appointment[] appointments;
这种情况是否有一致的语法?
更新:另外,类名是否以小写或大写字母开头?
没有约定,但您需要为类型标识符和变量标识符使用不同的名称。我倾向于大写类型而不是变量标识符,但这是个人品味的问题。在成员数据的这种特定情况下,还可以使用前缀或后缀。
也是个人品味,我确实倾向于使用复数来表示容器,并且怀疑它更常见。但是,反驳这一点,我经常认为在谈论整个容器时这是有道理的,而从英语阅读的角度来看,“约会[3]”作为“约会三”比“约会三”读起来更好。
没有商定的命名约定,但我会提出两个建议:
std::vector<appointment>
appointments_
或m_appointments
就个人而言,我发现复数形式在提到集合时更直观。
没有真正的普遍惯例。如果你在一个团队中工作,团队应该建立约定,每个人都应该遵守它们。关于约定:能够识别类型名称很重要,因为您无法在不知道符号是否为类型名称的情况下解析 C++。一种常见的约定是使类型名称以大写字符开头,而其他名称(函数、变量等)以小写字符开头。然而,它并不是普遍的。理论上,至少,从名字本身就应该清楚:通常的“规则”是类型名是非限定名词,变量名是限定名词,函数是动词。在实践中,限定名词和不限定名词之间的区别并不总是那么清楚,而且(至少在英语中)并不总是确定一个词是动词还是名词。我发现区分 1) 类型与其他符号以及 2) 成员与非成员很有用。
关于复数,这取决于。appointment
我发现 eg和之间的区别appointments
不是很明显。根据上下文,我可能觉得它已经足够了,并且
appointments
无论如何都可以使用,但在许多情况下,我会更进一步,将其称为setOfAppointments
or listOfAppointments
,或者其他明确表示容器的名称。这可能只是我的懒惰。我真的应该找到一个更好的名字(一个限定名词,表示什么样的约会:allAppointments
,如果没有别的)。
没有特别的约定。
我会建议使用匈牙利符号。
请阅读以下文章:http: //msdn.microsoft.com/en-us/library/aa260976%28v=vs.60%29.aspx
这会给你一个很好的主意。