[C++] 여러개의 헤더와 소스

2023. 2. 13. 02:01·C++/C++

◆암묵적인 헤더 파일과 소스 파일의 룰

▷일반적으로 많은 C++ 개발자는 헤더파일 한개와 소스파일 한개를 이용해 클래스를 정의하여 사용한다.

예제

 

◆클래스의 멤버함수 분리

▷클래스에서 맴버함수의 선언과 정의를 분리하기 위해서는 클래스에는 함수의 선언부분만 남겨둔 이후에 소스파일에서 해당 클래스의 함수를 정의하면 된다.

선언형식 클래스명::맴버함수명(파라미터){

   ...

}

//ex
//Human.h
#include <cstdio>
class Human{
public:
	void printName();
};

//Human.cpp
#include "Human.h"
void Human::printName(){
	printf("%d",name);
}

 

◆여러개의 헤더파일 사용시 중복 선언에 의한 오류 처리 

//1. #pragma once 를 첫번째 줄에 추가한다.
#pragma once

//2. #ifndef : 만약 ~가 선언되지 않았다면
#ifndef __HEADER_H__
#define __HEADER_H__
...
#endif

 

◆클래스 선언이 필요할 때 

//클래스 선언이 사용하는 코드가 아래에 있을경우
//전방 선언을 한다.
class Animal;

 

◆중복 발생 오류가 발생할 경우

▷헤더에 선언만 되어있는지 확인한다. (코드 순서의 차이로 인해서 선언이 아닌 몸통이 있다면 오류 발생)

▷중복 선언되는 변수는 cpp 파일로 이동한다.

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

[C++] Bitwise와 순수 가상함수  (0) 2023.02.13
[C++] LNK  (0) 2023.02.13
[C++] 열거형  (0) 2023.02.08
[C++] 가상함수  (0) 2023.02.07
[C++] 오버라이드와 오버로드  (0) 2023.02.07
'C++/C++' 카테고리의 다른 글
  • [C++] Bitwise와 순수 가상함수
  • [C++] LNK
  • [C++] 열거형
  • [C++] 가상함수
메카인
메카인
  • 메카인
    메카인의 지식창고
    메카인
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 코딩 공부
        • TIL(Today I Learn)
        • TIL
        • 백준(C++)
        • Python
        • 알고리즘
        • 프로젝트 회고
      • C++
        • C++
        • C++ STL
        • C,C++ mCoding yotube
      • 게임개발
        • 언데드서바이벌_골드메탈_클론코딩
        • 3D_골드메탈_클론코딩
        • 유니티_문제해결
        • 게임 수학
      • Unreal 공부
        • UE5 GameDev
        • Unreal Engine 4 C++ The Ult..
      • 교재 문제 풀이
        • 운영체제
      • 정보처리기사
        • 정처기 요약
        • 정처기 오답노트
      • 학교수업
        • 데이터베이스
        • 프로그래밍 언어론
        • 리눅스 시스템
        • 네트워크
      • 일상
        • 주식
        • 독서
        • 일기
      • (비공개 전용)
        • memory
        • Build
        • OOP
        • Smart Pointer
        • lamda
        • 게임 수학
        • 모던 C++
        • 모던 C++ STL
        • 모던 C++ Concurrency, Paralle..
        • 책
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
    • 블로그 관리
  • 링크

  • 공지사항

    • 공지사항 - 인생과 블로그의 목표
  • 인기 글

  • 태그

    ~
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
메카인
[C++] 여러개의 헤더와 소스
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.