Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
nonstandard extension used : class rvalue used as lvalue
For compatibility with previous versions of Visual C++, Microsoft extensions (/Ze) allow you to use a class type as an rvalue in a context that implicitly or explicitly takes its address. In some cases, such as the example below, this can be dangerous.
Example
// C4238.cpp
// compile with: /W4 /c
struct C {
C() {}
};
C * pC = &C(); // C4238
This usage causes an error under ANSI compatibility (/Za).