⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 intrinsics.hpp

📁 CGAL is a collaborative effort of several sites in Europe and Israel. The goal is to make the most i
💻 HPP
字号:
//  (C) Copyright Steve Cleary, Beman Dawes, Howard Hinnant & John Maddock 2000.//  Use, modification and distribution are subject to the Boost Software License,//  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at//  http://www.boost.org/LICENSE_1_0.txt).////  See http://www.boost.org/libs/type_traits for most recent version including documentation.#ifndef BOOST_TT_INTRINSICS_HPP_INCLUDED#define BOOST_TT_INTRINSICS_HPP_INCLUDED#ifndef BOOST_TT_CONFIG_HPP_INCLUDED#include "boost/type_traits/config.hpp"#endif//// Helper macros for builtin compiler support.// If your compiler has builtin support for any of the following// traits concepts, then redefine the appropriate macros to pick// up on the compiler support://// (these should largely ignore cv-qualifiers)// BOOST_IS_UNION(T) should evaluate to true if T is a union type// BOOST_IS_POD(T) should evaluate to true if T is a POD type// BOOST_IS_EMPTY(T) should evaluate to true if T is an empty struct or union// BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) should evaluate to true if "T x;" has no effect// BOOST_HAS_TRIVIAL_COPY(T) should evaluate to true if T(t) <==> memcpy// BOOST_HAS_TRIVIAL_ASSIGN(T) should evaluate to true if t = u <==> memcpy// BOOST_HAS_TRIVIAL_DESTRUCTOR(T) should evaluate to true if ~T() has no effect#ifdef BOOST_HAS_SGI_TYPE_TRAITS    // Hook into SGI's __type_traits class, this will pick up user supplied    // specializations as well as SGI - compiler supplied specializations.#   include "boost/type_traits/is_same.hpp"#   include <type_traits.h>#   define BOOST_IS_POD(T) ::boost::is_same< typename ::__type_traits<T>::is_POD_type, ::__true_type>::value#   define BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) ::boost::is_same< typename ::__type_traits<T>::has_trivial_default_constructor, ::__true_type>::value#   define BOOST_HAS_TRIVIAL_COPY(T) ::boost::is_same< typename ::__type_traits<T>::has_trivial_copy_constructor, ::__true_type>::value#   define BOOST_HAS_TRIVIAL_ASSIGN(T) ::boost::is_same< typename ::__type_traits<T>::has_trivial_assignment_operator, ::__true_type>::value#   define BOOST_HAS_TRIVIAL_DESTRUCTOR(T) ::boost::is_same< typename ::__type_traits<T>::has_trivial_destructor, ::__true_type>::value#   ifdef __sgi#      define BOOST_HAS_TYPE_TRAITS_INTRINSICS#   endif#endif#if defined(__MSL_CPP__) && (__MSL_CPP__ >= 0x8000)    // Metrowerks compiler is acquiring intrinsic type traits support    // post version 8.  We hook into the published interface to pick up    // user defined specializations as well as compiler intrinsics as     // and when they become available:#   include <msl_utility>#   define BOOST_IS_UNION(T) BOOST_STD_EXTENSION_NAMESPACE::is_union<T>::value#   define BOOST_IS_POD(T) BOOST_STD_EXTENSION_NAMESPACE::is_POD<T>::value#   define BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) BOOST_STD_EXTENSION_NAMESPACE::has_trivial_default_ctor<T>::value#   define BOOST_HAS_TRIVIAL_COPY(T) BOOST_STD_EXTENSION_NAMESPACE::has_trivial_copy_ctor<T>::value#   define BOOST_HAS_TRIVIAL_ASSIGN(T) BOOST_STD_EXTENSION_NAMESPACE::has_trivial_assignment<T>::value#   define BOOST_HAS_TRIVIAL_DESTRUCTOR(T) BOOST_STD_EXTENSION_NAMESPACE::has_trivial_dtor<T>::value#   define BOOST_HAS_TYPE_TRAITS_INTRINSICS#endif#ifndef BOOST_IS_UNION#   define BOOST_IS_UNION(T) false#endif#ifndef BOOST_IS_POD#   define BOOST_IS_POD(T) false#endif#ifndef BOOST_IS_EMPTY#   define BOOST_IS_EMPTY(T) false#endif#ifndef BOOST_HAS_TRIVIAL_CONSTRUCTOR#   define BOOST_HAS_TRIVIAL_CONSTRUCTOR(T) false#endif#ifndef BOOST_HAS_TRIVIAL_COPY#   define BOOST_HAS_TRIVIAL_COPY(T) false#endif#ifndef BOOST_HAS_TRIVIAL_ASSIGN#   define BOOST_HAS_TRIVIAL_ASSIGN(T) false#endif#ifndef BOOST_HAS_TRIVIAL_DESTRUCTOR#   define BOOST_HAS_TRIVIAL_DESTRUCTOR(T) false#endif#endif // BOOST_TT_INTRINSICS_HPP_INCLUDED

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -