Shopping Cart

No products in the cart.

BSI PD ISO/IEC TS 19568:2017

$215.11

Programming languages. C++ extensions for library fundamentals

Published By Publication Date Number of Pages
BSI 2017 128
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

[general.scope]

This technical specification describes extensions to the C++ Standard Library (1.2). These extensions are classes and functions that are likely to be used widely within a program and/or on the interface boundaries between libraries written by different organizations.

This technical specification is non-normative. Some of the library components in this technical specification may be considered for standardization in a future version of C++, but they are not currently part of any C++ standard. Some of the components in this technical specification may never be standardized, and others may be standardized in a substantially changed form.

The goal of this technical specification is to build more widespread existing practice for an expanded C++ standard library. It gives advice on extensions to those vendors who wish to provide them.

PDF Catalog

PDF Pages PDF Title
5 Contents
9 Foreword
10 Blank Page
11 1 General
1.1 Scope
1.2 Normative references
1.3 Namespaces, headers, and modifications to standard classes
12 1.4 Terms and definitions
1.5 Future plans (Informative)
13 1.6 Feature-testing recommendations (Informative)
15 2 Modifications to the C++ Standard Library
2.1 Uses-allocator construction
16 3 General utilities library
3.1 Utility components
3.1.1 Header synopsis
3.1.2 Class erased_type
3.2 Tuples
3.2.1 Header synopsis
17 3.2.2 Calling a function with a tuple of arguments
3.3 Metaprogramming and type traits
3.3.1 Header synopsis
21 3.3.2 Other type transformations
22 3.3.3 Logical operator traits
23 3.3.4 Detection idiom
24 3.4 Compile-time rational arithmetic
3.4.1 Header synopsis
25 3.5 Time utilities
3.5.1 Header synopsis
3.6 System error support
3.6.1 Header synopsis
3.7 Class template propagate_const
3.7.1 Class template propagate_const general
26 3.7.2 Header synopsis
28 3.7.3 propagate_const requirements on T
3.7.3.1 propagate_const requirements on class type T
29 3.7.4 propagate_const constructors
3.7.5 propagate_const assignment
30 3.7.6 propagate_const const observers
3.7.7 propagate_const non-const observers
31 3.7.8 propagate_const modifiers
3.7.9 propagate_const relational operators
33 3.7.10 propagate_const specialized algorithms
3.7.11 propagate_const underlying pointer access
3.7.12 propagate_const hash support
3.7.13 propagate_const comparison function objects
35 4 Function objects
4.1 Header synopsis
36 4.2 Class template function
38 4.2.1 function construct/copy/destroy
39 4.2.2 function modifiers
4.3 Searchers
4.3.1 Class template default_searcher
40 4.3.1.1 default_searcher creation functions
4.3.2 Class template boyer_moore_searcher
41 4.3.2.1 boyer_moore_searcher creation functions
4.3.3 Class template boyer_moore_horspool_searcher
42 4.3.3.1 boyer_moore_horspool_searcher creation functions
43 4.4 Function template not_fn
44 5 Optional objects
5.1 In general
5.2 Header synopsis
45 5.3 optional for object types
47 5.3.1 Constructors
49 5.3.2 Destructor
50 5.3.3 Assignment
53 5.3.4 Swap
5.3.5 Observers
54 5.4 In-place construction
5.5 No-value state indicator
55 5.6 Class bad_optional_access
5.7 Relational operators
5.8 Comparison with nullopt
56 5.9 Comparison with T
57 5.10 Specialized algorithms
5.11 Hash support
58 6 Class any
6.1 Header synopsis
59 6.2 Class bad_any_cast
6.3 Class any
6.3.1 any construct/destruct
60 6.3.2 any assignments
61 6.3.3 any modifiers
6.3.4 any observers
6.4 Non-member functions
64 7 string_view
7.1 Header synopsis
65 7.2 Class template basic_string_view
67 7.3 basic_string_view constructors and assignment operators
68 7.4 basic_string_view iterator support
69 7.5 basic_string_view capacity
7.6 basic_string_view element access
70 7.7 basic_string_view modifiers
7.8 basic_string_view string operations
72 7.8.1 Searching basic_string_view
73 7.9 basic_string_view non-member comparison functions
74 7.10 Inserters and extractors
75 7.11 Hash support
76 8 Memory
8.1 Header synopsis
79 8.2 Shared-ownership pointers
8.2.1 Class template shared_ptr
82 8.2.1.1 shared_ptr constructors
84 8.2.1.2 shared_ptr observers
85 8.2.1.3 shared_ptr casts
8.2.1.4 shared_ptr hash support
8.2.2 Class template weak_ptr
86 8.2.2.1 weak_ptr constructors
87 8.3 Type-erased allocator
8.4 Header synopsis
88 8.5 Class memory_resource
8.5.1 Class memory_resource overview
89 8.5.2 memory_resource public member functions
8.5.3 memory_resource protected virtual member functions
90 8.5.4 memory_resource equality
8.6 Class template polymorphic_allocator
8.6.1 Class template polymorphic_allocator overview
91 8.6.2 polymorphic_allocator constructors
8.6.3 polymorphic_allocator member functions
93 8.6.4 polymorphic_allocator equality
8.7 template alias resource_adaptor
8.7.1 resource_adaptor
94 8.7.2 resource_adaptor_imp constructors
8.7.3 resource_adaptor_imp member functions
95 8.8 Access to program-wide memory_resource objects
8.9 Pool resource classes
8.9.1 Classes synchronized_pool_resource and unsynchronized_pool_resource
97 8.9.2 pool_options data members
98 8.9.3 pool resource constructors and destructors
8.9.4 pool resource members
99 8.10 Class monotonic_buffer_resource
8.10.1 Class monotonic_buffer_resource overview
100 8.10.2 monotonic_buffer_resource constructor and destructor
101 8.10.3 monotonic_buffer_resource members
8.11 Alias templates using polymorphic memory resources
8.11.1 Header synopsis
102 8.11.2 Header synopsis
8.11.3 Header synopsis
8.11.4 Header synopsis
103 8.11.5 Header synopsis
8.11.6 Header synopsis
104 8.11.7 Header synopsis
8.11.8 Header synopsis
105 8.11.9 Header synopsis
8.11.10 Header synopsis
106 8.12 Non-owning pointers
8.12.1 Class template observer_ptr overview
107 8.12.2 observer_ptr constructors
8.12.3 observer_ptr observers
8.12.4 observer_ptr conversions
8.12.5 observer_ptr modifiers
108 8.12.6 observer_ptr specialized algorithms
109 8.12.7 observer_ptr hash support
110 9 Containers
9.1 Uniform container erasure
9.1.1 Header synopsis
111 9.1.2 Function template erase_if
112 9.1.3 Function template erase
9.2 Class template array
9.2.1 Header synopsis
113 9.2.2 Array creation functions
114 10 Iterators library
10.1 Header synopsis
10.2 Class template ostream_joiner
115 10.2.1 ostream_joiner constructor
10.2.2 ostream_joiner operations
10.2.3 ostream_joiner creation function
116 11 Futures
11.1 Header synopsis
11.2 Class template promise
117 11.3 Class template packaged_task
119 12 Algorithms library
12.1 Header synopsis
12.2 Search
120 12.3 Sampling
12.4 Shuffle
121 13 Numerics library
13.1 Generalized numeric operations
13.1.1 Header synopsis
13.1.2 Greatest common divisor
13.1.3 Least common multiple
122 13.2 Random number generation
13.2.1 Header synopsis
13.2.2 Utilities
13.2.2.1 Function template randint
123 14 Reflection library
14.1 Class source_location
14.1.1 Header synopsis
124 14.1.2 source_location creation
14.1.3 source_location field access
BSI PD ISO/IEC TS 19568:2017
$215.11