Version 2 (modified by 4 years ago) (diff) | ,
---|
DKGL Coding Conventions. [DRAFT]
Coding
{ 와 } 는 다른 라인에 위치하게 되는 경우는 new-line 후에 한다.
올바른 방법 | 올바르지 않음 |
if (expr) { // 되도록 이렇게. } | if (expr) { // 되도록 이렇게 하지 말것. } |
짧은것, 한줄에 한해서는 허용함. if (expr) {... } // 한줄, 짧은것에 대하여 허용 struct ABC { int Number() const { return 10; } // 허용 }; |
Naming
매크로를 제외하고 기본적으로 CamelCase 를 따른다. 의미 있는 이름을 사용해야 한다. 함수는 동사형, 변수는 명사형을 권장함.
리턴값이 함수의 역할에 해당하는 값이라면 Get 으로 시작하지 않는다.
올바른 이름 | 올바르지 않음 |
String Name() { return this->name; } | String GetName() { return this->name; } |
허용 가능한 경우 (리턴값이 함수 수행에 대한 결과값) bool GetName(String& name) { if (this->name != nullptr) { name = this->name; return true; } return false; } |
함수, 상수
대문자로 시작한다.
변수, 인스턴스
소문자로 시작함.
매크로
대문자와 _ 로 구성함
#define SOME_MACRO_FOR_SOMETHING 20
기타
lambda 는 소문자로
auto lambda = [](){};
템플릿 매개변수도 상수로 취급한다.
template <int Num> struct Number { };
Copyright
소스코드가 변경될 때만 카피라이트 연도 업데이트 진행한다.