Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/language"

From cppreference.com
< cpp
m (add more acronyms as many know them.)
m (+UB, ~RVO)
Line 23: Line 23:
 
{{nbsp}} {{rl|qualified lookup|qualified}} – {{rl|unqualified lookup|unqualified}} ({{rl|adl|ADL}})<br>
 
{{nbsp}} {{rl|qualified lookup|qualified}} – {{rl|unqualified lookup|unqualified}} ({{rl|adl|ADL}})<br>
 
{{rl|as if|As-if rule}}<br>
 
{{rl|as if|As-if rule}}<br>
{{rl|ub|Undefined behavior}}<br>
+
{{rl|ub|Undefined behavior (UB)}}<br>
 
{{rl|memory model|Memory model and data races}}<br>
 
{{rl|memory model|Memory model and data races}}<br>
 
{{rl|charset|Character sets and encodings}}<br>
 
{{rl|charset|Character sets and encodings}}<br>
Line 124: Line 124:
 
{{rl|initialization#Non-local variables|Dynamic non-local initialization}}<br>
 
{{rl|initialization#Non-local variables|Dynamic non-local initialization}}<br>
 
{{nbsp}}{{rl|initialization#Non-local variables|ordered}} – {{rl|initialization#Non-local variables|unordered}}<br>
 
{{nbsp}}{{rl|initialization#Non-local variables|ordered}} – {{rl|initialization#Non-local variables|unordered}}<br>
{{rl|copy elision|Copy elision}}
+
{{rl|copy elision|Copy elision (RVO)}}
 
</div>
 
</div>
  
Line 226: Line 226:
 
[[cpp/language/template_parameters|NTTP]],
 
[[cpp/language/template_parameters|NTTP]],
 
[[cpp/ranges#Range adaptor objects|RAO]],
 
[[cpp/ranges#Range adaptor objects|RAO]],
[[cpp/language/copy elision|RVO]],
 
 
[[cpp/memory/allocator_traits/select_on_container_copy_construction|SOCCC]],
 
[[cpp/memory/allocator_traits/select_on_container_copy_construction|SOCCC]],
 
[[cpp/language/template metaprogramming|TMP]],
 
[[cpp/language/template metaprogramming|TMP]],

Revision as of 13:15, 14 June 2023

 
 
C++ language
General topics
Flow control
Conditional execution statements
if
Iteration statements (loops)
for
range-for (C++11)
Jump statements
Functions
Function declaration
Lambda function expression
inline specifier
Dynamic exception specifications (until C++17*)
noexcept specifier (C++11)
Exceptions
Namespaces
Types
Specifiers
const/volatile
decltype (C++11)
auto (C++11)
constexpr (C++11)
consteval (C++20)
constinit (C++20)
Storage duration specifiers
Initialization
Expressions
Alternative representations
Literals
Boolean - Integer - Floating-point
Character - String - nullptr (C++11)
User-defined (C++11)
Utilities
Attributes (C++11)
Types
typedef declaration
Type alias declaration (C++11)
Casts
Memory allocation
Classes
Class-specific function properties
explicit (C++11)
static

Special member functions
Templates
Miscellaneous
 

This is a reference of the core C++ language constructs.

Basic concepts

Keywords

Preprocessor

Expressions

Declarations

Initialization

Functions

Statements

Classes

Templates

Exceptions

Miscellaneous

Idioms

See also

C documentation for C language constructs