Compiler Error C3890
Visual Studio 2015
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Compiler Error C3890.
var' : you cannot take the address of a literal data member
A literal data member exists on the garbage-collected heap. An object on the garbage-collected heap can be moved, so taking the address is not useful.
The following sample generates C3890:
// C3890.cpp
// compile with: /clr
ref struct Y1 {
literal int staticConst = 9;
};
int main() {
int p = &Y1::staticConst; // C3890
int p2 = Y1::staticConst; // OK
}
Show: