728x90
정보은닉(Information Hiding)
- 프로그래머가 실수를 했을 때, 이는 어떻게든 발견되어야 한다.
- 제한된 방법으로의 접근만 허용해서 잘못된 값이 저장되지 않도록 도와야 하고, 또 실수를 했을 때, 실수가 쉽게 발견되도록 해야 한다.
- 멤버변수를 private로 선언하고, 해당 변수에 접근하는 함수를 별도로 정의해서 ,안전한 형태로 멤버 변수의 접근을 유도하는 것이 바로 ‘정보은닉’
- const 함수
- 이 함수 내에서는 멤버변수에 저장된 값을 변경하지 않겠다
- const 선언이 추가된 멤버함수 내에서 멤버변수의 값을 변경하는 코드가 삽입되면, 컴파일 에러가 발생한다.
- const 함수 내에서는 const가 아닌 함수의 호출이 제한된다.
캡슐화(Encapsulation)
- 하나의 목적 하에 둘 이상의 기능이 모여 하나의 목적을 달성
- 캡슐화는 어려운 개념. 캡슐화의 범위를 결정하는 일이 쉽지 않기 때문이다.
- 구현하는 프로그램의 성격과 특성에 따라서 적용하는 범위가 달라지는, 정답이 딱히 없는 개념
- 캡슐화에는 정보은닉이 기본적으로 포함된다
728x90
'언어 > C++' 카테고리의 다른 글
8. 상속과 다형성 (0) | 2023.01.26 |
---|---|
7. 상속(Inheritance)의 이해 (0) | 2023.01.26 |
5. 연산자 다중정의 (0) | 2023.01.17 |
4. 복사 생성자 & 임시객체 (0) | 2023.01.17 |
3. 클래스 (0) | 2023.01.16 |