Difference between revisions of "Programming Stream C11 C++11 Exclusions"
(Created page with ' Agreed Detail Allocations to 344/300 Appendices C++ Part new - types - specification and qualification alignas alignof – memory alignment for a variable type-safe enum…') |
|||
Line 1: | Line 1: | ||
− | |||
Agreed Detail Allocations to 344/300 Appendices | Agreed Detail Allocations to 344/300 Appendices | ||
− | C++ Part | + | == C++ Part == |
− | new | + | : new - types - specification and qualification |
− | alignas | + | :: alignas alignof – memory alignment for a variable |
− | type-safe | + | :: type-safe enumerations - enum class declaration – not implicitly converted to integers – cannot be compared to integers – underlying type is known - default type is int, can be overridden enum class Enum: unsigned int {vali1, val2} - requires explicit scoping: Enum::val1 – can also use explicit scoping with old-style enum |
− | new | + | :: new - expressions |
− | raw and | + | :: raw and cooked User-defined literals – suffix notation – 1234_suffix – numeric literals |
− | new | + | :: new - encapsulation |
− | default ctor – trivial and non-trivial - POD | + | :: default ctor – trivial and non-trivial - POD |
− | new | + | :: new - library |
− | initializer | + | :: initializer lists – extends from POD cases to all classes including std containers - initialization-list constructor – T::T(std::initializer_list<type> list) – initializer list is constant and the data in its members cannot be changed |
− | tuple types | + | :: tuple types – sets of heterogeneous objects of pre-arranged dimensions |
− | hash tables | + | :: hash tables – unordered associative containers |
− | regular | + | :: regular expressions |
− | smart | + | :: smart pointers |
− | random | + | :: random number facility |
− | wrapper | + | :: wrapper reference |
− | polymorphic | + | :: polymorphic wrappers |
− | type traits | + | :: type traits for meta-programming |
− | computing | + | :: computing return type of function objects |
− | new | + | :: new - compatibility with C |
− | plain old | + | :: plain old data – relaxed restrictions POD rules – trivial and std layout |
− | C Part | + | == C Part == |
− | new | + | :: new - add to align with C11 |
− | _Generic( | + | :: _Generic( ) - type-generic macros |
− | complex | + | :: complex data type |
− | macros for | + | :: macros for construction of complex values |
− | alignment | + | :: alignment specifications (_Alignas, _Alignof()) |
− | _Atomic | + | :: _Atomic |
− | _Noreturn | + | :: _Noreturn |
− | macros for | + | :: macros for floating-point characteristics |
− | quick_exit() | + | :: quick_exit() (if exit() fails) |
Revision as of 12:07, 3 May 2012
Agreed Detail Allocations to 344/300 Appendices
C++ Part
- new - types - specification and qualification
- alignas alignof – memory alignment for a variable
- type-safe enumerations - enum class declaration – not implicitly converted to integers – cannot be compared to integers – underlying type is known - default type is int, can be overridden enum class Enum: unsigned int {vali1, val2} - requires explicit scoping: Enum::val1 – can also use explicit scoping with old-style enum
- new - expressions
- raw and cooked User-defined literals – suffix notation – 1234_suffix – numeric literals
- new - encapsulation
- default ctor – trivial and non-trivial - POD
- new - library
- initializer lists – extends from POD cases to all classes including std containers - initialization-list constructor – T::T(std::initializer_list<type> list) – initializer list is constant and the data in its members cannot be changed
- tuple types – sets of heterogeneous objects of pre-arranged dimensions
- hash tables – unordered associative containers
- regular expressions
- smart pointers
- random number facility
- wrapper reference
- polymorphic wrappers
- type traits for meta-programming
- computing return type of function objects
- new - compatibility with C
- plain old data – relaxed restrictions POD rules – trivial and std layout
C Part
- new - add to align with C11
- _Generic( ) - type-generic macros
- complex data type
- macros for construction of complex values
- alignment specifications (_Alignas, _Alignof())
- _Atomic
- _Noreturn
- macros for floating-point characteristics
- quick_exit() (if exit() fails)