C ++(03または11)で、クラスの可視性を制限する方法はありますか(Javaのデフォルトまたはパッケージスコープと同様)?例えば:
Foo
にのみ表示されますが、には表示されBar
ませんBaz
。
class Foo {};
class Bar { Foo foo; /* OK */ };
class Baz { Foo foo; /* not visible, error */ };
ここで提案されている匿名の名前空間ソリューション宣言されている名前空間の外部にあるクラスの可視性を制限するにはどうすればよいですか?動作していないようです。[デモ: http: //ideone.com/fsEKPu ]何か誤解したことがありますか?