2010-05-11 7 views
1

사용 가능한 캡슐화 섹션에 필드가있는 클래스 캡슐화를 만드는 작업이 있습니다. 그런 다음 필드 액세스의 허용되고 금지 된 모든 방법을 보여주는 응용 프로그램을 만들어야합니다.C++ 캡슐화의 기본 내용

C++의 캡슐화 섹션은 무엇입니까? 그리고 object.field 또는 object-> field를 제외하고는 어쨌든 어떤 메소드가 있습니까?

+1

이것은 숙제입니다. 태그를 붙이십시오. –

+0

감사합니다. 이제 캡슐화가 무엇인지, 그리고 OOP가 무엇인지, wiki가 좋은 출발인지, 독립적인지를 배우십시오. –

답변

1

질문은 약간 명확하지만 C++ 캡슐화 옵션은 public, protected 및 private입니다. 나는 접근 방법이를 언급하지 않는다고 가정한다. 및 -> 연산자가 아니라 캡슐화 된 필드에 액세스 할 수있는 곳 (공개는 어디에서나 기본 및 파생 된 함수로부터 보호되고 기본 클래스 함수에서만 비공개 - 친구에게도 적용해야하는 경우 제외).

당신이 볼
class Foo{ 
public: 
    int getBar() const { return m_Bar; } 
    void setBar(Bar _value){ m_Bar = _value; } 
private: 
    Bar m_Bar; 
}; 

, 클래스 이외의 아무것도 private 필드를 볼 수 있습니다

1

다음은 C++ 캡슐화의 사소한 예입니다. 따라서 "막대"변수에 액세스하거나 수정하는 유일한 방법은 get/set 메서드를 사용하는 것입니다.