namespace std {
inline constexpr unsigned int max_pointer_bits_available = see below; // (1) C++29
}
概要
ポインタタギングに使用できるビット数の、処理系定義の上限値。
pointer_tag_pairのBitsRequestedはこの値以下でなければならない。
備考
- この値が非0であることは、無効なポインタ値に対する(動作が処理系定義である)非算術操作が、
from_tagged()による復元を保証するのに十分な情報を保存することを示す - ポインタタギングをサポートしない処理系ではこの値は0となりうる。すべての処理系で最低1ビットが使用できる保証はない
例
#include <memory>
#include <iostream>
int main()
{
std::cout << std::max_pointer_bits_available << std::endl;
}
出力例
3
バージョン
言語
- C++29
処理系
- Clang: ??
- GCC: ??
- Visual C++: ??