Я должен написать код для презентации моего босса. В конце концов, технический персонал и разработчики программного обеспечения будут смотреть на код. Он хочет, чтобы я усовершенствовал его, чтобы он выглядел профессионально (я выгляжу непрофессионально?), Поэтому я должен делать то, что должен сделать.
Рассмотрим этот стиль письма:
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;
}
};
Могу поспорить, что это не скомпилирует никаких проблем, но когда дело доходит до именования переменных, подчеркнутых префиксов, структуры классов и т. Д., Существует множество конфликтующих ресурсов. Я провел некоторые исследования, и это меня запутало. Я знаю, что, в конце концов, это просто стиль, основанный на мнении, или личные взгляды, но у меня есть ТОЛЬКО сообщество, которое может решить эту проблему, и я все еще верю, что где-то есть руководство или стандарты:
Другой стиль будет:
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 #, потому что я думаю, что в этом вопросе оба языка имеют одинаковые стандарты»
Задача ещё не решена.
Других решений пока нет …