検索

ホームページ  >  に質問  >  本文

C++ - 2 つの変数が等しいかどうかを判断する方法

  1. ポインタ変数 PVOID lpbuffer はメモリ アドレスを指します、

  2. 変数 GUID g = {0x25a207b9,0xddf3,0x4660,{0x8e,0xe9,0x76,0xe5,0x8c,0x74,0x06,0x3e}};

ポインタ lpbuffer が指すコンテンツが GUID と等しいかどうかを確認するにはどうすればよいですか?

给我你的怀抱给我你的怀抱2777日前1396

全員に返信(3)返信します

  • typecho

    typecho2017-06-17 09:17:56

    MSDNのGUID構造の定義によると

    リーリー

    GUID はオーバーロードされた == 演算子を持たない構造であるため、2 つの GUID を比較する場合は、== 演算子を実装するか、メンバー変数を 1 つずつ正直に比較する必要があります。

    リーリー

    返事
    0
  • 学习ing

    学习ing2017-06-17 09:17:56

    2 つの状況があります:

    GUID 型が == 演算子をオーバーロードすると仮定すると、アドレスは異なります

    リーリー

    アドレスもバイト数も同じです

    リーリー

    == 演算子をオーバーロードせず、内部構造がわかっている GUID 型については、他の回答者 @一代Key客の回答を参照してください

    GUID 型は == 演算子をオーバーロードしておらず、その内部構造はバイトごとに比較できると思います

    。 リーリー

    返事
    0
  • ringa_lee

    ringa_lee2017-06-17 09:17:56

    リーリー

    返事
    0
  • キャンセル返事