C++ 역시 클래스 멤버 선언 시 접근 제한자를 지정할 수 있다.

접근 제한자는 왜 필요할까?

객체지향 프로 래밍은 특히 이 접근 제한자를 잘 사용할 필요가 있다. 객체지향 프로그래밍은 한 완제품을 생상하는 공장의 기계들과 같다고 생각하면 좋을 것 같다. 예를 들어 자동차 한 대를 만들어 내기 위해서는 엔진, 부품 등등 여러 가지 제작, 결합 과정을 거치게 된다. 이 공장 기계들은 서로의 어떻게 부품을 만들어 내는지, 전혀 알 필요가 없다. 공장 기계들은 설계자가 시킨 작업만 진행하면 된다. 서로의 작업들의 내용을 공유하지 않기 위해 필요한 것이 정보은닉이다.

프로그램도 프로그래머가 설계한 클래스, 함수를 통해 자기 자신의 작업만 진행하면 된다. 이 접근 제한자는 프로그램을 보통 한명이 만들 때보다 여러 프로그래머가 동시에 작업을 할 때 특히 확실히 필요하게 된다.

#include <iostream>
#include <string>

using namespace std;

class Student
{
private:
	string name;
	int englishScore;
	int mathScore;
	int getSum()
	{
		return englishScore + mathScore;
	}
public:
	Student(string n ,int e, int m)
	{
		name = n;
		englishScore = e;
		mathScore = m;
	}
	void show() { cout << name << " : [합계 " << getSum() << "점]\n"; }

};

int main(void)
{
	Student a = Student("Mr.Han",100,98);
	a.show();

	system("pause");
}

'프로그래밍언어 > C++' 카테고리의 다른 글

C++) 클래스 상속, 오버라이딩  (0) 2020.06.22
C++) 생성자와 소멸자  (0) 2020.06.10
C) 배열/문자열과 포인터.  (0) 2020.05.02
C) 파일 입출력 (FILE,fopen,fclose)  (0) 2020.05.02
C) ASCII 아스키코드  (0) 2020.05.01

+ Recent posts