본문 바로가기

C++ Language/Tip / Information

C++ 코딩 스타일(제가 사용하는 코딩 스타일입니다.)

먼저 c++에는 class가 있습니다. 뭐 class가 주를 이룬다고 이야기를 할수 있겠죠.

그래서 코딩을 할때 먼저 추상화 작업을 잘 하시고 이를 class로 잘 구현을 하셔야 되는데

구현을 하시는 건 다 아실 것입니다.  저도 확실히는 잘 모르기에 여기에 대해서는

자세한 설명을 하기는 힘들겠네요.

그럼 그렇게 구현을 하느냐에 대한 것인데,

기본적인 스타일이 하나의 class당 인터페이스 부(*.h)와 compile 단위의 원시프로그램(*.cpp)를 작성해야 합니다.

즉, 헤더파일에 class를 다 선언 하시고 그 정의에 대한 것은 cpp에 적으시라는 말입니다.

그럼 아주간단하게 data클래스를 만든다면.. data.h || data.cpp || main.cpp  이렇게 세개를 만들어 주시면 됩니다.

그리고 위 예제 처럼 인터페이스 부랑 원시프로그램 명은 class명과 같이 해 주는 것이
좋습니다.

그 이유는 나중에 파일이 많아지게 되면 클래스에 대한 파일들을 찾기가 쉬워 지게 때문
입니다.

그리고 세번째로는 헤더 파일에는 guard를 사용해야 됩니다.

guard라는 것이

#ifndef  ~~ #endif

선언 하는 것 입니다.

그 이유는 cpp파일들이 계속 해서 헤더파일을 부르게 되면

헤더파일에 선언 되어 있던 변수가 계속 같게 불러져서

나중에는 심각한 오류를 유발 할 수도 있습니다.

그리고 여기에 명칭은 class 명 즉 _DATA_H__  이걸 사용 하시면 편합니다.

#ifndef _DATA_H__
#define _DATA_H__

#endif

이렇게 사용을 하시면 되요.. 해석을 하자면

<< _DATA_H__게 define이 되어 있지 않다면 들어가라>>
 
그럼 들어가서 바로 define을 선언 해 주면 다음 부터는 이걸 부르지는 않습니다.

그리고 class 안에 멤버들은 단락을 구분해서 표현을 하면 조금 더 알기 쉽습니다.

그리고 아무리 간단한 함수 즉 inline 함수 같은 경우라도

class내에서 정의를 하지 마시고 선언을 다 끝낸 후에 하시는 게 좋습니다.

그럼 나중에 수정 할때 편할 수도 있을 것입니다.

이렇게 설명을 한 내용은 어디 나와 있는 것이 아니라

제가 사용하고 있는 코딩 스타일 입니다.

그래서 다른 분들도 이렇게 사용하시는 분들도 많이 있겠지만

그래도 처음 하시는 분이나 아직 스타일을 못 잡으신 분들에게

필요한 스타일은 따라서 써 보라고 적어 보았습니다.

'C++ Language > Tip / Information' 카테고리의 다른 글

const_cast 키워드  (0) 2010.02.12
mutable 키워드  (0) 2010.02.12
상수함수란?!  (0) 2010.02.12
explicit 키워드  (0) 2010.02.10
C++언어가 C언어와 달라진 점  (1) 2009.04.29