最終更新日時:
が更新

履歴 編集

variable
<memory>

std::max_pointer_bits_available(C++29)

namespace std {
  inline constexpr unsigned int max_pointer_bits_available = see below; // (1) C++29
}

概要

ポインタタギングに使用できるビット数の、処理系定義の上限値。

pointer_tag_pairBitsRequestedはこの値以下でなければならない。

備考

  • この値が非0であることは、無効なポインタ値に対する(動作が処理系定義である)非算術操作が、from_tagged()による復元を保証するのに十分な情報を保存することを示す
  • ポインタタギングをサポートしない処理系ではこの値は0となりうる。すべての処理系で最低1ビットが使用できる保証はない

#include <memory>
#include <iostream>

int main()
{
  std::cout << std::max_pointer_bits_available << std::endl;
}

出力例

3

バージョン

言語

  • C++29

処理系

関連項目

参照