Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
kan inte använda casting_operator för att konvertera från "type1" till "type2"
Anmärkningar
En gjutningsoperator försökte konvertera mellan inkompatibla typer. Du kan till exempel inte använda operatorn dynamic_cast för att konvertera en pekare till en referens. Operatorn dynamic_cast kan inte användas för att kasta bort kvalificerare. Alla kvalificerare för typerna måste matcha.
Du kan använda operatorn const_cast för att ta bort attribut som const, volatileeller __unaligned.
Exempel
I följande exempel genereras C2682:
// C2682.cpp
class A { virtual void f(); };
class B: public A {};
void g(A* pa) {
B& rb = dynamic_cast<B&>(pa); // C2682
}
I följande exempel genereras C2682:
// C2682b.cpp
// compile with: /clr
ref struct R{};
ref struct RR : public R{};
ref struct H {
RR^ r ;
short s;
int i;
};
int main() {
H^ h = gcnew H();
interior_ptr<int>lr = &(h->i);
interior_ptr<short>ssr = safe_cast<interior_ptr<short> >(lr); // C2682
interior_ptr<short>ssr = reinterpret_cast<interior_ptr<short> >(lr); // OK
}