たとえば、サイズX、サイズY、タイルのベクトル、名前など、いくつかのメンバーを持つマップクラスがあります。
外部からアクセスされる変数を管理するには、2 つの基本的な方法があります。
- カプセル化されますが、多くのコードとより多くの入力 (setX() および getX() const 関数) が追加されます。
- 外部から頻繁にアクセスされる変数をパブリックメンバーとして持ち、簡単に保つ
私はどちらも好きではありません。私はアイデアを思いつきました: 外部から const として機能するクラス メンバー (したがって、簡単に object.member にアクセスできますが、安全です) であり、クラス内では非 const です。ただし、私の知る限り、c++ にはそれがありません。私が知っている唯一の (醜い) 回避策は、すべてを const にして、クラス関数内で const キャストを使用することです。
C++ 11でこれに対するより良いアプローチはありますか? そのためのキーワードはありますか?