C++C++11Code SnippetLanguage FeatureLearn C++

Learn About Using C++ rvalue References In The C++Builder BCC32 Compiler

BCC32, which is the classic C++Builder 32 bit compiler, includes the use of rvalue references, which allow creating a reference to temporaries. Also, rvalue references avoid unnecessary copying and make possible perfect forwarding functions. This feature is one of the C++11 features.

Rvalue references are a compound type like standard C++ references, which are referred to as lvalue references. An lvalue reference is formed by appending the ampersand character (&) to a type:

The syntax of an rvalue reference is to add && after a type:

An rvalue reference behaves like an lvalue reference, except that you can bind an rvalue reference to a temporary — an rvalue.

In the example above, SomeClass() is not bound to an identifier, so it is an rvalue and can be bound to an rvalue reference — but not an lvalue reference.

Here is the above sample code in C++Builder.

Find out more about C++ rvalue References over in the Embarcadero DocWiki.

Related posts
C++Language FeatureLearn C++

Learn To Modernize Appearance Of Multi-Platform C++ Builder FMX Applications By Using Styles

C++Learn C++Videos

Learn C++ With Back to Basics: Unit Tests by Ben Saks (CPPCon 2020) Video

C++Language FeatureLearn C++

Learn To Modernize Appearance Of Windows VCL Applications By Using Powerful Styles

C++Language FeatureLearn C++

Learn To Use MySQL Database Connections On Windows With MyDAC Components