C++가 클래스를 이용해 보다 객체지향적인 체계를 형성하긴 했지만 다음의 내용은 C에서도 어느 정도 해당된다.
1. 기본 구조
일반적으로 개발시 파일이 다음과 같이 나뉜다.
-Interface file : 클래스 선언(함수, 변수 포함)을 포함한 헤더 파일
-Implement file : 함수 등의 정의를 포함한 소스 파일
-Application[Driver] file : main 함수를 포함한 프로그램 중심 소스 파일
이 언어에서는 사전 선언을 가능하게 함으로써 Interface, 즉 각종 이름을 모아놓은 목록을 프로그램 절차에서 맨 위에 색인처럼 제시하는 것이 가능해진다. 심지어 다수의 클래스를 이용할 때 클래스의 함수와 변수조차 없이 이름만 달랑 선언하는 것도 가능하다.
class A;
class B:public A{...};
class A{...};
2. Translation[Compilation] Unit
include로 연결된 논리적 묶음을 말한다. 일방향이기 때문에 같은 헤더를 include 하더라도 서로 다른 T.U가 된다. 이 범위 내에서만 기능하는 것으로는 Unnamed namespace가 있다.
namespace{
...
}
이 기능을 이용해 내부 함수를 숨김으로써 보다 독립된 프로그래밍이 가능해진다.
△
페이스북 댓글