본문 바로가기

Programming/C/C++

class의 정보은닉과 캡슐화

클래스는 기본적으로 관련된 변수들을 묶는 구조체와 함수를 함께 묶은 것을 말하며, 보통 정보은닉과 캡슐화라는 개념을 중요시 한다.


정보은닉

외부 객체에서 내부 객체의 멤버변수에 직접 접근하게 되어 생기게 되는 문제를 해결 하기 위해 쓰인다.

멤버 변수의 데이터에 접근 하기 위해 직접 접근 하는 것이 아닌 관련 함수를  이용하여 접근 하도록 하는 것이다.

이는 함수에서 필요로 하는 데이터를 걸러서 받을 수 있게 되어 컴파일 단계에서 생기는 오류가 아닌 데이터의 오류에 의한 잘못된 오류의 발생을 방지 할 수 있다.


캡슐화

캡슐화는 관련 데이터와 관련 함수를 함께 묶는 것을 말한다.

이는 서로 다른 클래스의 함수에서 다른 멤버 변수로 접근 하는데 생기는 불필요한 데이터 복사를 방지 할 수 있게 된다.

또한 객체가 여럿이 될수록 각각의 알맞는 데이터와 함수를 클래스로 정리를 하게 되면 오류를 찾거나 수정이 필요한 경우에 효율성이 더 높아진다.

'Programming > C/C++' 카테고리의 다른 글

클래스와 static  (0) 2015.01.15
클래스와 const  (0) 2015.01.15
복사생성자와 얕은복사  (0) 2015.01.15
friend 선언  (0) 2015.01.14
reference와 pointer의 차이  (0) 2015.01.13