메뉴 건너뛰기

C++ 기초 - Class

Eugene 2019.05.17 02:28 조회 수 : 626

C에서 C++로 하나 업그레이드 된 것이, 바로 객체지향 개념의 도입이다.

객체지향 프로그래밍으로 나아가는 이유는, 뭐 재사용이 가장 크지 않을까 라고 생각하지만, 추후 그것은 다른 강좌에서 좀 더 자세히 다루도록 하자.

대부분의 언어에서 class 키워드를 사용하여 객체를 나타내고, C++도 다르지 않다.

이번에는 class가 들어가는 진짜(?) C++ 프로그램을 보기로 하자.

 

#include "pch.h"

#include <iostream>

using namespace std;

 

class GradeBook {

public:

    void displayMessage() const {

        cout << "Welcome to the Grade Book!" << endl;

    }

};

 

int main()

{

    GradeBook myGradeBook;

    myGradeBook.displayMessage();

 

    return 0

}

 

main() 함수 전에 class 키워드를 사용하여 GradeBook 객체를 만들었다.

컴파일러에게 어떤 맴버 함수(메쏘드)와 데이타 맴버들이 클래스(객체)에 속해 있는지 알려줘야 한다.

GradeBook 클래스 정의에는 displayMessage라 불리는 맴버 함수가 속해있고, 이 함수는 특정 메시지를 출력한다.

displayMessage 맴버 함수 뒤의 const 키워드는 이 함수는 호출 될 때, 절대 GradeBook 객체를 수정해서는 안 된다는 것이다.

public: 키워드는 그 함수가 public에게 이용가능하다는 것이다. (public을 일반이라고 생각하자. 또는 공용)

즉, 그것은 main()함수와 같은 다른 함수에 의해서 호출될 수 있다는 것을 의미한다.

물론, 다른 맴버 함수들이 클래스에 속해 있다면 그것들에 의해서도 호출될 수 있다는 것을 의미한다.

private과 protected 키워드는 추후에 다룰것이다.

displayMessage 앞의 void는 이 함수가 아무것도 반환하지 않는다는 것을 의미한다.

 

GradeBook의 displayMessage() 맴버 함수를 쓰기 위해서, 우리는 main() 함수 안에서 myGradeBook이라는 이름으로 GradeBook을 생성하였다.

클래스 이름에 점(.)을 찍고, 사용하고자 하는 맴버 함수를 적으면, 우리는 그 함수를 사용하는 것이다.

위 프로그램을 컴파일하여 실행하면, 아래와 같은 결과가 나온다.

 

Welcome to the Grade Book!