Copy elision
Compiler optimization that eliminates copying of objects under certain conditions
In C++ computer programming, copy elision refers to a compiler optimization technique that eliminates unnecessary copying of objects. The C++ language standard generally allows implementations to perform any optimization, provided the resulting program's observable behavior is the same as if, i.e. pretending, the program were executed exactly as mandated by the standard.
Nº Q5169174 ★
Common · History
Copy elision
Compiler optimization that eliminates copying of objects under certain conditions
In C++ computer programming, copy elision refers to a compiler optimization technique that eliminates unnecessary copying of objects. The C++ language standard generally allows implementations to perform any optimization, provided the resulting program's observable behavior is the same as if, i.e. pretending, the program were executed exactly as mandated by the standard.
From Wikipedia
In C++ computer programming, copy elision refers to a compiler optimization technique that eliminates unnecessary copying of objects. The C++ language standard generally allows implementations to perform any optimization, provided the resulting program's observable behavior is the same as if, i.e. pretending, the program were executed exactly as mandated by the standard. Beyond that, the standard also describes a few situations where copying can be eliminated even if this would alter the program's behavior, the most common being the return value optimization (see below). Another widely implemented optimization, described in the C++ standard, is when a temporary object of class type is copied to an object of the same type. As a result, copy-initialization is usually equivalent to direct-initialization in terms of performance, but not in semantics; copy-initialization still requires an accessible copy constructor. The optimization can not be applied to a temporary object that has been bound to a reference.
Text: Wikipédia, CC BY-SA 4.0. ·
Related cards
-
C
Constant folding
Compiler optimization that replaces expressions with computed results at compile time
Nº Q2342581 ★
Not listed
-
Compiler
Computer program that transforms source code into object code
Nº Q47506 ★★★
Not listed
-
C
Code completion
Context-aware code completion feature in programming environments
Nº Q116761507 ★★
Not listed
-
Copy-and-paste programming
Pejorative for the production of highly repetitive computer programming code, as produced by copy and paste operations
Nº Q5169171 ★
Not listed
-
C
Copy-on-write
Resource-management technique used in computer programming
Nº Q1131607 ★★
Not listed
-
L
Loop unrolling
Loop transformation technique
Nº Q1869750 ★
Not listed