예를들어 인터페이스 클래스NodeInterface의 함수들이 클래스 Node의 private 멤버에 접근할필요가 있는데 Node클래스안에 NodeInterface를 프렌드로두는방법이 많이 쓰이나요?
한가지 대안은 Node클래스를 아예 struct로 만들고NodeInterface의 멤버함수들의 파라미터에 struct Node* 형을 추가하여 사용자가 오직 NodeInterface로만 struct Node에 접근하도록 만드는건데 이러면 struct Node의 멤버는 접근권한이 public이 되어버려서 별로인가요?(사실 public이어서 오직 NodeInterface로만 struct Node에 접근한다는말은 틀린거겠지만 사용자레벨에서 규칙으로의 의미로 말한것임)
한가지 대안은 Node클래스를 아예 struct로 만들고NodeInterface의 멤버함수들의 파라미터에 struct Node* 형을 추가하여 사용자가 오직 NodeInterface로만 struct Node에 접근하도록 만드는건데 이러면 struct Node의 멤버는 접근권한이 public이 되어버려서 별로인가요?(사실 public이어서 오직 NodeInterface로만 struct Node에 접근한다는말은 틀린거겠지만 사용자레벨에서 규칙으로의 의미로 말한것임)
stl보면 안그러는듯