Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.
We recommend using Visual Studio 2017

Standard Conversions

The C++ language defines conversions between its fundamental types. It also defines conversions for pointer, reference, and pointer-to-member derived types. These conversions are called "standard conversions." (For more information about types, standard types, and derived types, see Types.)

This section discusses the following standard conversions:

The following code causes conversions (in this example, integral promotions):

long  lnum1, lnum2;
int   inum;

// inum promoted to type long prior to assignment.
lnum1 = inum;

// inum promoted to type long prior to multiplication.
lnum2 = inum * lnum2;

The result of a conversion is an l-value only if it produces a reference type. For example, a user-defined conversion declared as

operator int&()

returns a reference and is an l-value. However, a conversion declared as

operator int()

returns an object and is not an l-value.

Other Resources

Community Additions

© 2018 Microsoft