C++ #18. 프렌드(friend) 함수


C++ #18. 프렌드(friend) 함수

C++언어 C++ #18. 프렌드(friend) 함수 jangThang 2016. 10. 2. 15:28 이웃추가 본문 기타 기능 friend 리턴값 프렌드함수명(파라미터 들){ 행위; } 위에 있는 것이 friend 함수를 정의하는 형식입니다. 그냥 기존 함수 정의 앞에 friend만 추가된 것이죠. 그럼 friend 함수가 뭘까요? friend(친구)는 친구라는 이유로 클래스 내의 private까지 모두 접근할 수 있는 C++의 무법자입니다. 접근하고자 하는 private 맴버를 갖는 클래스 내부에 프렌드 함수를 선언해주면, 이곳 저곳의 클래스 멤버를 수정할 수 있죠. 이런 이유로 friend가 C++의 장점인 캡슐화(데이터 은닉 = 데이터 보호 및 보안)를 해친다고 쓰지 말기를 권장하기도 하죠. (마치 goto문이 프로그래밍의 흐름을 해친다고 안 쓰는 것처럼..) 또한, 이 friend 키워드(에약어)는 함수 뿐만 아니라, 클래스, 변수에도 사용하여 똑같이 이용할 수 있습니다....



원문링크 : C++ #18. 프렌드(friend) 함수