Compiler Warning (level 1) C4669
Collapse the table of content
Expand the table of content
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

Compiler Warning (level 1) C4669

Error Message

'cast' : unsafe conversion: 'class' is a managed type object

A cast contains a managed type. The compiler completes the cast by performing a bit wise copy of one pointer to the other, but provides no other checking. To resolve this warning, do not cast classes containing managed members.

The following sample generates C4669:

// C4669.cpp
// compile with: /clr /W1
ref struct A {
   int i;
   Object ^ pObj;   // remove the managed member to resolve the warning

ref struct B {
   int j;

int main() {
   A ^ a = gcnew A;
   B ^ b = reinterpret_cast<B ^>(a);   // C4669
© 2015 Microsoft