编译器错误 C2452
“type”:safe_cast 的无效源类型
safe_cast 的源类型无效。 例如,safe_cast
操作中的所有类型都必须是 CLR 类型。
以下示例生成 C2452:
// C2452.cpp
// compile with: /clr
struct A {};
struct B : public A {};
ref struct C {};
ref struct D : public C{};
int main() {
A a;
safe_cast<B*>(&a); // C2452
// OK
C ^ c = gcnew C;
safe_cast<D^>(c);
}