typedef를 활용한 private범위의 struct나 class가져오기


뭐.. private에 선언한 struct나 class를 외부에서 쓰고 싶은 경우엔.. 그냥 public에 선언해버리면 되지만.. 무조건 public보다 외부에 알리는데는 이런 심볼이름을 해야겠다.. 라는 정의가 필요할 수 있다. 집안에선 자랑스런 남편이고 아들일테고 밖에서는 또 역할이 다르지 않은가? 여튼 고민하시고 혹시나 필요하신 분을 위해...
-------- A.h --------
#include "B.h"
class A
{
    B::BST* st;
};

-------- B.h --------
class B
{
public:
 typedef struct ST BST;

private:
 struct ST
 {
 };
};