構文
- クラスClassOne {public:bool non_modifying_member_function()const {/ * ... * /}};
- int ClassTwo :: non_modifying_member_function()const {/ * ... * /}
- void ClassTwo :: modification_member_function(){/ * ... * /}
- char non_param_modding_func(const ClassOne&one、const ClassTwo * two){/ * ... * /}
- float parameter_modifying_function(ClassTwo&one、ClassOne * two){/ * ... * /}
- 短いClassThree :: non_modding_non_param_modding_f(const ClassOne&)const {/ * ... * /}
備考
const
correctnessは、プログラマーが誤ってコードを変更している可能性がある関数をすばやく特定できるため、非常に便利なトラブルシューティングツールです。また、 Const Correct Function Parameters
示されているような意図しないエラーが正しくコンパイルされずに気付かれないようにします。
のためのクラスを設計する方がはるかに簡単ですconst
それは後から追加するよりも、正確const
既存のクラスに正確さを。可能な場合は、することができ 、任意のクラス設計const
それがあるように正しいconst
自分と他人に後でそれを変更する手間を節約するために、正しいを。
これは、必要に応じてconst
精度と同じ規則でvolatile
正しさに適用することもできますが、これはあまり頻繁に使用されません。
リフレクション:
ISO_CPP
constの正確さに私を売る
C ++チュートリアル
Const Correctness 関連する例