먼저 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 |