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

📄 enable_if.hpp

📁 CGAL is a collaborative effort of several sites in Europe and Israel. The goal is to make the most i
💻 HPP
字号:
// (C) Copyright David Abrahams 2002.// (C) Copyright Jeremy Siek    2002.// (C) Copyright Thomas Witt    2002.// Distributed under 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)#ifndef BOOST_ENABLE_IF_23022003THW_HPP#define BOOST_ENABLE_IF_23022003THW_HPP#include <boost/detail/workaround.hpp>#include <boost/mpl/identity.hpp>#include <boost/iterator/detail/config_def.hpp>//// Boost iterators uses its own enable_if cause we need// special semantics for deficient compilers.// 23/02/03 thw//namespace boost{  namespace iterators  {    //    // Base machinery for all kinds of enable if    //    template<bool>    struct enabled    {      template<typename T>      struct base      {        typedef T type;      };    };        //    // For compilers that don't support "Substitution Failure Is Not An Error"    // enable_if falls back to always enabled. See comments    // on operator implementation for consequences.    //    template<>    struct enabled<false>    {      template<typename T>      struct base      {#ifdef BOOST_NO_SFINAE        typedef T type;        // This way to do it would give a nice error message containing        // invalid overload, but has the big disadvantage that        // there is no reference to user code in the error message.        //        // struct invalid_overload;        // typedef invalid_overload type;        //#endif      };    };    template <class Cond,              class Return>    struct enable_if# if !defined(BOOST_NO_SFINAE) && !defined(BOOST_NO_IS_CONVERTIBLE)      : enabled<(Cond::value)>::template base<Return># else      : mpl::identity<Return># endif     {# if BOOST_WORKAROUND(BOOST_MSVC, <= 1200)        typedef Return type;# endif     };  } // namespace iterators} // namespace boost#include <boost/iterator/detail/config_undef.hpp>#endif // BOOST_ENABLE_IF_23022003THW_HPP

⌨️ 快捷键说明

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