その場合に迷子にならないようにするには?たとえば、これはboolを返す関数ですが、10個のパラメータを取ります。
bool myFunc(bool par1 = true, bool par2 = false, bool par3 = true,
bool par4 = true /* and so on */ ) {}
そして、関数paramsが90%の場合にデフォルトに設定されているとしましょう。しかし、クライアントコードがそれらのいくつかだけを変更したい場合があります。ここに表示される唯一のオプションは、変更が必要なパラメータに到達するまで、すべてのデフォルトのパラメータを入念にコピーすることです。この方法でこの関数を呼び出す可能性:
bool myVal = myFunc(par10 = true, par20 = false);
したがって、コードを読む人は誰でも、コードで何が起こっているのか(パラメーターの名前は非常に長いですが意味があります)を知っています。さらに、関数定義を変更すると、デフォルトのパラメーターを更新するために呼び出されるたびに調べる必要はありませんか?