C++ Chapter 8.8 : 클래스 코드와 헤더 파일

Date:     Updated:

카테고리:

태그:

인프런에 있는 홍정모 교수님의 홍정모의 따라 하며 배우는 C++ 강의를 듣고 정리한 필기입니다. 😀
🌜 [홍정모의 따라 하며 배우는 C++]강의 들으러 가기!


chapter 8. 객체 지향의 기초 : 클래스 코드와 헤더 파일

🔔 클래스는 주로 헤더 파일안에 정의한다.

  • 다른 파일에서 해당 클래스를 객체로 만들어 사용하려할 땐 해당 클래스가 있는 헤더 파일을 include 해주면 된다.
  • 헤더 파일의 이름은 클래스와 동일하게 한다.
#include "Calc.h"

int main()
{
    Calc cal(10);
    cal.add(10).sub(1).mult(2),print();

    return 0;
}

🔔 프로토타입은 헤더 파일에, 바디는 cpp 파일에.

  • 멤버 함수를 헤더 파일에 프로토타입 + 바디 이렇게 전체를 정의해도 되지만 보통 함수의 프로토타입은 헤더 파일에, 함수의 바디는 헤더 파일과 동일한 이름의 cpp파일에 분리하여 정의한다.
    • 헤더파일 👉 리턴타입 + 함수이름 + 매개변수 + ;
    • cpp 파일 👉 헤더 파일 include 하고 클래스이름:: 붙여 멤버 함수임을 분명히 해주고 바디 정의.

📜Calc.h

#include <iostream>

using namespace std;

class Calc
{
private:
	int m_value;

public: 
	Calc(int init_value)     
		: m_value(init_value)
	{}
	Calc& add(int value);  // 헤더파일엔 프로토타입만 ! 
};

📜Calc.cpp

#include "Calc.h"    // include

using namespace std;

Calc& Calc::add(int value) // 바디 정의. ⭐Calc:: 꼭 붙여주기!⭐
{ 
    m_value += value; 
    return *this;
}

📜main.cpp

#include "Calc.h"    // include

using namespace std;

int main()
{
    Calc cal(10);
    cal.add(10).sub(1).mult(2),print();

    return 0;
}


🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기


댓글남기기