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 |