1. ホーム
  2. c++

[解決済み] std::pairとstd::tupleは2つしかメンバーがいない場合の違い?

2022-10-07 05:15:47

質問

の違いは何ですか? std::pairstd::tuple の2つしかないのですか?(明らかに std::pair は 2 つのメンバーだけを必要とし tuple はもっと多いか少ないかもしれません...)

どのように解決するのですか?

いくつかの相違点があります。

  1. std::tuple は、規格上、決して 標準レイアウト . すべての std::pair<T, Y> の両方が標準レイアウトの場合 TY は標準レイアウトです。

  2. の中身は、もう少し簡単です。 pair よりも tuple . の中で関数呼び出しをする必要があります。 tuple の場合は関数呼び出しが必要ですが pair のケースは単なるメンバーフィールドです。

でも、そんなもんです。