13

私が理解していることから、標準レイアウトでは次の 3 つのことが可能です。

  • 空の基本クラスの最適化
  • 特定のポインタ キャストによる C との下位互換性
  • オフセットの使用

現在、ライブラリに含まれているのはis_standard_layout述語メタ関数ですが、上記にリストした C 機能が汎用コードでチェックする必要があることは非常にまれであるため、汎用コードでの使用はあまり見られません。私が考えることができる唯一のことは、内部static_assertで使用することですが、それはコードをより堅牢にするためだけであり、必須ではありません。

どのようにis_standard_layout便利ですか?それなしでは不可能であり、標準ライブラリでそれを必要とするものはありますか?

4

1 に答える 1