ホームページ > バックエンド開発 > C++ > C の三元比較演算子「」は何をするのでしょうか?

C の三元比較演算子「」は何をするのでしょうか?

Barbara Streisand
リリース: 2024-11-18 08:21:02
オリジナル
482 人が閲覧しました

What Does the C   Three-Way Comparison Operator `` Do?

C の三元比較演算子

C 演算子を学習しているときに、謎の "<=>" に遭遇したことがあるかもしれません。オペレーター。この謎めいた記号は何を表しているのでしょうか?

三元比較演算子を理解する

「<=>」三者比較演算子として知られる演算子を使用すると、従来の関係演算子と比較して、より微妙な比較が可能になります。 P0515 提案によると:

  • If "a < b", "<=>" 0 未満の値を返します。
  • 「a > b」の場合、「<=>」 0 より大きい値を返します。
  • 「a == b」の場合、「<=>」 0 を返します。

基本的に、この演算子により、ある値が別の値より小さいか、大きいか、等しいかを判断するための比較が可能になります。

実装

カスタム型にこの演算子を実装するには、「演算子<=>」を定義する必要があります。関数を使用して、次のように適切なカテゴリを返します:

順序付けカテゴリ: 型が「<」を使用した比較をサポートしている場合。演算子を使用する場合、順序 カテゴリを返して次の演算子を効率的に生成できます: "<"、">"、"<="、">="、"=="、および " !=.

等価カテゴリ: 型が等価比較のみをサポートしている場合は、等価 カテゴリを返して、"== と "! = 演算子。

さらに、これらの演算の強度を指定できます。 「a == b」が、公的にアクセス可能な比較顕著状態のみにアクセスするすべての「f」に対して「f(a) == f(b)」を意味する場合、操作は強力となります。そうでなければ、弱いです。

以上がC の三元比較演算子「」は何をするのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート