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: memory
// <memory> -*- 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) 1997-1999 * 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/memory * This is a Standard C++ Library header. */ #ifndef _GLIBCXX_MEMORY #define _GLIBCXX_MEMORY 1 #pragma GCC system_header /** * @defgroup memory Memory * @ingroup utilities * * Components for memory allocation, deallocation, and management. */ /** * @defgroup pointer_abstractions Pointer Abstractions * @ingroup memory * * Smart pointers, etc. */ #include <bits/stl_algobase.h> #include <bits/allocator.h> #include <bits/stl_construct.h> #include <bits/stl_uninitialized.h> #include <bits/stl_tempbuf.h> #include <bits/stl_raw_storage_iter.h> #if __cplusplus >= 201103L # include <exception> // std::exception # include <typeinfo> // std::type_info in get_deleter # include <iosfwd> // std::basic_ostream # include <ext/atomicity.h> # include <ext/concurrence.h> # include <bits/functexcept.h> # include <bits/stl_function.h> // std::less # include <bits/uses_allocator.h> # include <type_traits> # include <debug/debug.h> # include <bits/unique_ptr.h> # include <bits/shared_ptr.h> # include <bits/shared_ptr_atomic.h> # if _GLIBCXX_USE_DEPRECATED # include <backward/auto_ptr.h> # endif #else # include <backward/auto_ptr.h> #endif #if __cplusplus >= 201103L # include <cstdint> # ifdef _GLIBCXX_USE_C99_STDINT_TR1 namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION /** * @brief Fit aligned storage in buffer. * * [ptr.align] * * This function tries to fit @a __size bytes of storage with alignment * @a __align into the buffer @a __ptr of size @a __space bytes. If such * a buffer fits then @a __ptr is changed to point to the first byte of the * aligned storage and @a __space is reduced by the bytes used for alignment. * * @param __align A fundamental or extended alignment value. * @param __size Size of the aligned storage required. * @param __ptr Pointer to a buffer of @a __space bytes. * @param __space Size of the buffer pointed to by @a __ptr. * @return the updated pointer if the aligned storage fits, otherwise nullptr. */ inline void* align(size_t __align, size_t __size, void*& __ptr, size_t& __space) noexcept { const auto __intptr = reinterpret_cast<uintptr_t>(__ptr); const auto __aligned = (__intptr - 1u + __align) & -__align; const auto __diff = __aligned - __intptr; if ((__size + __diff) > __space) return nullptr; else { __space -= __diff; return __ptr = reinterpret_cast<void*>(__aligned); } } // 20.7.4 [util.dynamic.safety], pointer safety enum class pointer_safety { relaxed, preferred, strict }; inline void declare_reachable(void*) { } template <typename _Tp> inline _Tp* undeclare_reachable(_Tp* __p) { return __p; } inline void declare_no_pointers(char*, size_t) { } inline void undeclare_no_pointers(char*, size_t) { } inline pointer_safety get_pointer_safety() noexcept { return pointer_safety::relaxed; } _GLIBCXX_END_NAMESPACE_VERSION } // namespace #endif // _GLIBCXX_USE_C99_STDINT_TR1 #endif // C++11 #endif /* _GLIBCXX_MEMORY */
Upload File
Create Folder