OOPでは、通常、関数で検証を行い、値が許容範囲内にない場合は関数に例外をスローさせます。
ただし、クラスに対してこれを行っていて、例外のスロー/キャッチについてまだ知らない場合は、次の 2 つのいずれかを行うことができます。
- 関数が int、bool などを返すようにします。引数が範囲内にある場合、関数はそのことを示す値を返します。それ以外の場合、関数は、引数が範囲内になかったことを示す値を返します。
このようなもの:
bool setRadius(double radius)
{
if(radius >= 0)
{
m_radius = radius;
return true;
}
else return false;
}
「半径」の引数が範囲内にない場合、m_radius に格納されている値を開始/変更しないことに注意してください。m_radius の値を許容できない値に変更しても意味がありません。時間の無駄です。
- main() で確認してください (「ダイアログで」?)
例外について詳しく知りたい場合は、このページを参照して、例外とは何かをより深く理解してください: http://www.cplusplus.com/doc/tutorial/exceptions/
したがって、i++ と結論として、慣習はメソッドでそれをチェックし、値が許容範囲外の場合はメソッドに例外をスローさせることです。ただし、クラスにいて、まだ例外をカバーしていない場合は、必要ないかもしれません。頑張ってください!:)