[열혈 C++] Chapter 3

1316 단어 cppcpp

구조체 특징

  • C와 달리 typedef 없이 구조체 이름으로 변수 선언 가능
  • 구조체 내에 함수 선언 가능 -> 구조체 변수에 직접 접근 가능
  • C++에서 구조체는 클래스의 일종이다

객체 중심으로 묶기

  • 상수를 전역에 선언하는 대신, 외부에서 namespace로 묶거나 구조체 내부에서 선언한다
  • 구조체 내부에는 함수의 원형만 선언하고 정의를 밖으로 빼낸다.

클래스(객체)

  • 구조체 선언에서 struct 대신에 class를 쓰면 클래스 선언이 된다.
  • defualt 접근 제어 지시자
    구조체 : public
    클래스 : private
  • 클래스 별로 헤더파일과 소스파일을 생성해서 선언과 정의를 분리한다.
  • inline 함수의 호출은 컴파일 시 몸통으로 대체되기 때문에, 소스파일이 아닌 헤더파일에 정의를 해놔야 한다. (컴파일은 파일 단위라서 외부 파일의 정보는 모른다)
  • 매개변수에서 객체는 참조자로 받으면 된다
  • 하나의 객체가 다른 객체와 소통하는 방법은 함수 호출을 기반으로 하는데, 이러한 형태의 함수호출을 '메시지 전달(Message Passing)'이라 한다.

참고 : 헤더파일 중복방지 매크로

#ifndef __HEADER_H__
#define __HEADER_H__
 ...
#endif

좋은 웹페이지 즐겨찾기