int パラメーターを持つ COM サーバー関数があります。Matlab で関数を呼び出して引数として "true" を渡すと、C++ は渡された "true" 値を int パラメーターの -1 に評価します (コードをステップ実行しています)。
「false」を渡すと、問題なく 0 と評価されます。
以前はこのパラメーターに true または false の値のみを許可していたため、これを行っていますが、現在は int 0 ~ 4 を受け入れるため、下位互換性のために入力 0 と 1 で同じロジックを維持しています。
「真」の値が -1 と評価される理由がわかりません。