C++/C++ 기본

바람직한 C++ 프로그램 작성법

검정비니 2018. 7. 7. 21:08
728x90
반응형

바람직한 C++ 프로그램 작성법



C++ 프로그램은 여러 클래스들과 전역 함수들로 구성된다. 이들은 하나의 C++ 소스 팡일로 작성할 수도 있고 여러 소스 팡일로 자줄 수도 있다. 지금부터 바람직한 C++ 프로그램의 작성에 대해 알아보자.



1. 헤더 파일과 cpp 파일 분리


C++ 프로그램의 소스 코드는 다음과 같은 원칙으로 분리하여 작성하는 것이 바람직하다.


- 클래스마다 선언부는 헤더 파일에, 구현부는 cpp 파일에 분리하여 작성한다.

- main() 등 함수나 전역 변수는 한 개 이상의 cpp 파일에 나누어 작성한다.


클래스마다 클래스의 선언부와 구현부를 헤더 파일과 cpp 소스 파일로 분리하면 저체 프로그램을 관리하기 쉽고 클래스를 재사용하기 쉽기 때문이다. 클래스를 활용하는 코드들은 클래스에 대한 선언이 필요하므로, 클래스의 선언부를 포함한 헤더 파일만 include 하여 사용하면 된다. 만일 헤더 파일에 클래스의 구현부가 들어 있다면, 헤더 파일을 include 하는 여러 소스 파일에 구현부가 중복하여 들어가게 되므로, 링크 시에 오류가 발생한다.





2. 헤더 파일을 중복 include 할 때 생기는 문제점



클래스 선언부를 헤더 파일로 작성할 때 한 가지 주의할 것이 있다. cpp 파일에서 클래스가 선언된 헤더 파일을 여러 번 include 하면, 중복 선언으로 인해 컴파일 오류가 발생할 수 있다. 예를 들어 다음과 같이 cpp 파일에서 Circle.h를 여러 번 include 하면 컴파일 오류가 발생한다.


i.e.

#include <iostream>

using namespace std;


#include "Circle.h"

#include "Circle.h" //컴파일 오류 발생

#include "Circle.h" //컴파일 오류 발생

반응형

'C++ > C++ 기본' 카테고리의 다른 글

객체 배열  (0) 2018.07.07
객체 포인터  (2) 2018.07.07
C++ 구조체  (2) 2018.07.07
인라인 함수  (0) 2018.07.07
접근 지정  (0) 2018.07.07