1#ifndef NEFORCE_CORE_TYPEINFO_TYPES_HPP__
2#define NEFORCE_CORE_TYPEINFO_TYPES_HPP__
12NEFORCE_BEGIN_NAMESPACE__
44#ifdef NEFORCE_PLATFORM_WINDOWS
55#ifdef NEFORCE_PLATFORM_WINDOWS
87#ifdef NEFORCE_PLATFORM_LINUX64
118#ifdef NEFORCE_PLATFORM_LINUX64
153#if defined(NEFORCE_ARCH_BITS_64) || defined(NEXUSFORCE_ENABLE_DOXYGEN)
362struct input_iterator_tag {
363 constexpr explicit input_iterator_tag() =
default;
378struct output_iterator_tag {
379 constexpr explicit output_iterator_tag() =
default;
394struct forward_iterator_tag : input_iterator_tag {
395 constexpr explicit forward_iterator_tag() =
default;
409struct bidirectional_iterator_tag : forward_iterator_tag {
410 constexpr explicit bidirectional_iterator_tag() =
default;
426struct random_access_iterator_tag : bidirectional_iterator_tag {
427 constexpr explicit random_access_iterator_tag() =
default;
442struct contiguous_iterator_tag : random_access_iterator_tag {
443 constexpr explicit contiguous_iterator_tag() =
default;
463struct allocator_arg_tag {
464 constexpr explicit allocator_arg_tag()
noexcept =
default;
473struct default_construct_tag {
474 constexpr explicit default_construct_tag()
noexcept =
default;
483struct exact_arg_construct_tag {
484 constexpr explicit exact_arg_construct_tag()
noexcept =
default;
494struct inplace_construct_tag {
495 constexpr explicit inplace_construct_tag()
noexcept =
default;
504template <
typename... Args>
505struct pass_template_construct_tag {
506 constexpr explicit pass_template_construct_tag()
noexcept =
default;
509template <
size_t Size>
510struct pass_size_construct_tag {
511 constexpr explicit pass_size_construct_tag() noexcept = default;
520struct unpack_utility_construct_tag {
521 constexpr explicit unpack_utility_construct_tag()
noexcept =
default;
527 template <
typename T>
528 NEFORCE_CONSTEXPR14
const ignore_t& operator=(
const T& )
const noexcept {
533NEFORCE_INLINE17
constexpr ignore_t ignore{};
535NEFORCE_END_NAMESPACE__
unsigned char byte_t
字节类型,定义为无符号字符
float float32_t
32位单精度浮点数类型
unsigned int uint32_t
32位无符号整数类型
unsigned long uint64_t
64位无符号整数类型
unsigned long native_size_type
系统ID类型
long double decimal_t
扩展精度浮点数类型
unsigned char uint8_t
8位无符号整数类型
double float64_t
64位双精度浮点数类型
void * native_handle_type
系统句柄类型
unsigned short uint16_t
16位无符号整数类型
decltype(nullptr) nullptr_t
空指针类型
signed char int8_t
8位有符号整数类型