3項目の条件式は、xの動作結果です。最初にxの値を計算します。それ以外の場合、操作全体の結果は式zの値です
例:string s = "";
文字列x = "default";
s = s.isempty()?x:s;
このコードの意味は次のとおりです。最初にSが空であるかどうか(結果が空)かどうかを判断し、次にs = xを実行します。つまり、xを実行します
もう1つのより複雑です
クラス{int year、day; ?1:年<a.year?-1:month?1:月<a.month?-1:a.day?1。3項目演算子(式1):(式3)、計算方法は次のとおりです。式2の場合、それ以外の場合は式3の値です。
2。int i =(5> 3):(5-3);
3。右から左への3点演算子の組み合わせによれば、私はこのように分割しました
年> a.year?1年<a.year?-1:(月> A.month? .day?-1:0)));
したがって、右端の式から開始する必要があり、結果は1、0、および-1の値にする必要があります。
上記は純粋に個人的な理解です。私はあなたのアルゴリズムの意味が何であるかを理解しませんでした。 。 。 。
記事を友達と共有するか、コメントを残してください。ご支援ありがとうございます!