典型的なアクセス指定子とは何か、そしてそれらが何を意味するのかを理解しています。「パブリック」メンバーはどこからでもアクセスでき、「プライベート」メンバーは同じクラスや友達だけがアクセスできます。
私が疑問に思っているのは、どちらかといえば、これが低レベルの用語で何に相当するかということです。それらが使用されている言語(この場合はc ++)によって課せられた高レベルの制限(何が何にアクセスできるか)を超えて、これらの間のコンパイル後の機能の違いはありますか?
別の言い方をすれば、これがプログラマーが常に良い選択をした完璧な世界である場合(後で変更される可能性のあるメンバーにアクセスせず、実装間で同じままである必要がある明確に定義されたメンバーのみを使用するなど)、これらを使用する理由は何ですか?もの?