質問: DotProduct(dir2, lineDir); return (a1 * a2 < 0 && dist < radius) ? true : false; } ``` ### 試したこと 自身でも調べてみたのですが、なかなか答えがわかりません http://nn-hokuson.hatenablog.com/entry/2017/08/21/193912 ↑こちらのサイトを参考に学習しています。 ### 補足情報(FW/ツールのバージョンなど) Visual Studio 2019 Community
回答: 「三項演算子」で調べてみましょう。 ? の前にある式が、 判定に使う計算式です。 この式の結果によって、処理で使う値を分けています。 計算式 ? trueの時に使う値 : false の時に使う値 ``` if (a1 * a2 < 0 && dist < radius) { return true; } else { return false; } ``` 質問されている式はこれと同じだといえば伝わるでしょうか。 ちなみに、 return 文以外でもよく使います。 String str = (判定式) ? trueのとき設定したい文字列 : falseのとき設定したい文字列; こんな感じです。