1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | class AccessControl { public: char publicData; void publicFunc() {}; protected: int protectedData; void protectedFunc() {}; private: float privateData; void privateFunc() {}; public: void AccessAllMembers(); }; void AccessControl::AccessAllMembers() { publicData = 'A'; // 성공 publicFunc(); // 성공 protectedData = 100; // 성공 protectedFunc(); // 성공 privateData = 4.5f; // 성공 privateFunc(); // 성공 } int main() { // 객체를 생성한다. AccessControl ac; // AccessAllMembers() 함수 호출 ac.AccessAllMembers(); return 0; } | cs |
앞의 예제와는 달리 모두 접근에 성공했다 그 이유는 클래스내의 멤버함수가 접근했기 때문이다!