namespace std { using ptrdiff_t = see below; using size_t = see below; using max_align_t = see below; using nullptr_t = decltype(nullptr); enum class byte : unsigned char {}; // [support.types.byteops], byte type operations template <class IntType> constexpr byte& operator<<=(byte& b, IntType shift) noexcept; template <class IntType> constexpr byte operator<<(byte b, IntType shift) noexcept; template <class IntType> constexpr byte& operator>>=(byte& b, IntType shift) noexcept; template <class IntType> constexpr byte operator>>(byte b, IntType shift) noexcept; constexpr byte& operator|=(byte& l, byte r) noexcept; constexpr byte operator|(byte l, byte r) noexcept; constexpr byte& operator&=(byte& l, byte r) noexcept; constexpr byte operator&(byte l, byte r) noexcept; constexpr byte& operator^=(byte& l, byte r) noexcept; constexpr byte operator^(byte l, byte r) noexcept; constexpr byte operator~(byte b) noexcept; template <class IntType> constexpr IntType to_integer(byte b) noexcept; } #define NULL see below #define offsetof(P, D) see below
Содержимое и значение заголовка <cstddef> такие же, как и у заголовка стандартной библиотеки C <stddef.h>, за исключением того, что он не объявляет тип wchar_t, он также объявляет тип byte и связанные с ним операции ([support.types.byteops]), и, как указано в [support.types.nullptr] и [support.types.layout].
См. Также: ISO C 7.19