X7ROOT File Manager
Current Path:
/usr/include/c++/8
usr
/
include
/
c++
/
8
/
ðŸ“
..
📄
algorithm
(2.46 KB)
📄
any
(18.17 KB)
📄
array
(11.38 KB)
📄
atomic
(40.09 KB)
ðŸ“
backward
ðŸ“
bits
📄
bitset
(44.83 KB)
📄
cassert
(1.61 KB)
📄
ccomplex
(1.3 KB)
📄
cctype
(2.35 KB)
📄
cerrno
(1.73 KB)
📄
cfenv
(2 KB)
📄
cfloat
(1.84 KB)
📄
charconv
(16.32 KB)
📄
chrono
(29.17 KB)
📄
cinttypes
(2.11 KB)
📄
ciso646
(1.43 KB)
📄
climits
(1.87 KB)
📄
clocale
(1.86 KB)
📄
cmath
(47.01 KB)
📄
codecvt
(5.22 KB)
📄
complex
(53.26 KB)
📄
complex.h
(1.56 KB)
📄
condition_variable
(8.74 KB)
📄
csetjmp
(1.9 KB)
📄
csignal
(1.81 KB)
📄
cstdalign
(1.37 KB)
📄
cstdarg
(1.82 KB)
📄
cstdbool
(1.37 KB)
📄
cstddef
(6.29 KB)
📄
cstdint
(2.12 KB)
📄
cstdio
(4.33 KB)
📄
cstdlib
(6.18 KB)
📄
cstring
(3.05 KB)
📄
ctgmath
(1.33 KB)
📄
ctime
(2.08 KB)
📄
cuchar
(2.16 KB)
📄
cwchar
(6.36 KB)
📄
cwctype
(2.73 KB)
📄
cxxabi.h
(21.46 KB)
ðŸ“
debug
ðŸ“
decimal
📄
deque
(2.6 KB)
📄
exception
(4.69 KB)
ðŸ“
experimental
ðŸ“
ext
📄
fenv.h
(1.97 KB)
📄
filesystem
(1.4 KB)
📄
forward_list
(1.54 KB)
📄
fstream
(35.92 KB)
📄
functional
(36.87 KB)
📄
future
(49.49 KB)
📄
initializer_list
(2.9 KB)
📄
iomanip
(16.16 KB)
📄
ios
(1.56 KB)
📄
iosfwd
(6.76 KB)
📄
iostream
(2.63 KB)
📄
istream
(32.07 KB)
📄
iterator
(2.58 KB)
📄
limits
(67.56 KB)
📄
list
(2.53 KB)
📄
locale
(1.45 KB)
📄
map
(2.5 KB)
📄
math.h
(4.26 KB)
📄
memory
(4.6 KB)
📄
mutex
(17.8 KB)
📄
new
(7.34 KB)
📄
numeric
(5.32 KB)
📄
optional
(42.93 KB)
📄
ostream
(21.57 KB)
ðŸ“
parallel
ðŸ“
profile
📄
queue
(2.41 KB)
📄
random
(1.65 KB)
📄
ratio
(19.42 KB)
📄
regex
(1.85 KB)
📄
scoped_allocator
(15.84 KB)
📄
set
(2.5 KB)
📄
shared_mutex
(18.95 KB)
📄
sstream
(26.24 KB)
📄
stack
(2.33 KB)
📄
stdexcept
(7.79 KB)
📄
stdlib.h
(2.2 KB)
📄
streambuf
(29.31 KB)
📄
string
(1.89 KB)
📄
string_view
(20.3 KB)
📄
system_error
(11.25 KB)
📄
tgmath.h
(1.33 KB)
📄
thread
(10.27 KB)
ðŸ“
tr1
ðŸ“
tr2
📄
tuple
(58.94 KB)
📄
type_traits
(83.86 KB)
📄
typeindex
(3.02 KB)
📄
typeinfo
(7.51 KB)
📄
unordered_map
(1.8 KB)
📄
unordered_set
(1.8 KB)
📄
utility
(12.01 KB)
📄
valarray
(39.33 KB)
📄
variant
(47.11 KB)
📄
vector
(2.68 KB)
ðŸ“
x86_64-redhat-linux
Editing: numeric
// <numeric> -*- C++ -*- // Copyright (C) 2001-2018 Free Software Foundation, Inc. // // This file is part of the GNU ISO C++ Library. This library is free // software; you can redistribute it and/or modify it under the // terms of the GNU General Public License as published by the // Free Software Foundation; either version 3, or (at your option) // any later version. // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // Under Section 7 of GPL version 3, you are granted additional // permissions described in the GCC Runtime Library Exception, version // 3.1, as published by the Free Software Foundation. // You should have received a copy of the GNU General Public License and // a copy of the GCC Runtime Library Exception along with this program; // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. /* * * Copyright (c) 1994 * Hewlett-Packard Company * * Permission to use, copy, modify, distribute and sell this software * and its documentation for any purpose is hereby granted without fee, * provided that the above copyright notice appear in all copies and * that both that copyright notice and this permission notice appear * in supporting documentation. Hewlett-Packard Company makes no * representations about the suitability of this software for any * purpose. It is provided "as is" without express or implied warranty. * * * Copyright (c) 1996,1997 * Silicon Graphics Computer Systems, Inc. * * Permission to use, copy, modify, distribute and sell this software * and its documentation for any purpose is hereby granted without fee, * provided that the above copyright notice appear in all copies and * that both that copyright notice and this permission notice appear * in supporting documentation. Silicon Graphics makes no * representations about the suitability of this software for any * purpose. It is provided "as is" without express or implied warranty. */ /** @file include/numeric * This is a Standard C++ Library header. */ #ifndef _GLIBCXX_NUMERIC #define _GLIBCXX_NUMERIC 1 #pragma GCC system_header #include <bits/c++config.h> #include <bits/stl_iterator_base_types.h> #include <bits/stl_numeric.h> #include <ext/numeric_traits.h> #ifdef _GLIBCXX_PARALLEL # include <parallel/numeric> #endif /** * @defgroup numerics Numerics * * Components for performing numeric operations. Includes support for * for complex number types, random number generation, numeric * (n-at-a-time) arrays, generalized numeric algorithms, and special * math functions. */ #if __cplusplus >= 201402L #include <type_traits> namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION namespace __detail { // std::abs is not constexpr, doesn't support unsigned integers, // and std::abs(std::numeric_limits<T>::min()) is undefined. template<typename _Up, typename _Tp> constexpr _Up __absu(_Tp __val) { static_assert(is_unsigned<_Up>::value, "result type must be unsigned"); static_assert(sizeof(_Up) >= sizeof(_Tp), "result type must be at least as wide as the input type"); return __val < 0 ? -(_Up)__val : (_Up)__val; } template<typename _Up> void __absu(bool) = delete; // GCD implementation template<typename _Tp> constexpr _Tp __gcd(_Tp __m, _Tp __n) { static_assert(is_unsigned<_Tp>::value, "type must be unsigned"); return __m == 0 ? __n : __n == 0 ? __m : __detail::__gcd(__n, _Tp(__m % __n)); } // LCM implementation template<typename _Tp> constexpr _Tp __lcm(_Tp __m, _Tp __n) { return (__m != 0 && __n != 0) ? (__m / __detail::__gcd(__m, __n)) * __n : 0; } } // namespace __detail #if __cplusplus > 201402L #define __cpp_lib_gcd_lcm 201606 // These were used in drafts of SD-6: #define __cpp_lib_gcd 201606 #define __cpp_lib_lcm 201606 /// Greatest common divisor template<typename _Mn, typename _Nn> constexpr common_type_t<_Mn, _Nn> gcd(_Mn __m, _Nn __n) noexcept { static_assert(is_integral_v<_Mn>, "std::gcd arguments must be integers"); static_assert(is_integral_v<_Nn>, "std::gcd arguments must be integers"); static_assert(_Mn(2) != _Mn(1), "std::gcd arguments must not be bool"); static_assert(_Nn(2) != _Nn(1), "std::gcd arguments must not be bool"); using _Up = make_unsigned_t<common_type_t<_Mn, _Nn>>; return __detail::__gcd(__detail::__absu<_Up>(__m), __detail::__absu<_Up>(__n)); } /// Least common multiple template<typename _Mn, typename _Nn> constexpr common_type_t<_Mn, _Nn> lcm(_Mn __m, _Nn __n) noexcept { static_assert(is_integral_v<_Mn>, "std::lcm arguments must be integers"); static_assert(is_integral_v<_Nn>, "std::lcm arguments must be integers"); static_assert(_Mn(2) == 2, "std::lcm arguments must not be bool"); static_assert(_Nn(2) == 2, "std::lcm arguments must not be bool"); using _Up = make_unsigned_t<common_type_t<_Mn, _Nn>>; return __detail::__lcm(__detail::__absu<_Up>(__m), __detail::__absu<_Up>(__n)); } #endif // C++17 _GLIBCXX_END_NAMESPACE_VERSION } // namespace std #endif // C++14 #endif /* _GLIBCXX_NUMERIC */
Upload File
Create Folder