Anteckning
Å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.
reinterpret_cast som används mellan relaterade klasser: "class1" och "class2"
Anmärkningar
Använd inte reinterpret_cast för att gjuta mellan relaterade typer. Använd static_cast i stället, eller för polymorfa typer, använd dynamic_cast.
Som standard är den här varningen inaktiverad. Mer information finns i Kompilatorvarningar som är inaktiverade som standard.
Example
Följande kodexempel genererar C4946:
// C4946.cpp
// compile with: /W1
#pragma warning (default : 4946)
class a {
public:
a() : m(0) {}
int m;
};
class b : public virtual a {
};
class b2 : public virtual a {
};
class c : public b, public b2 {
};
int main() {
c* pC = new c;
a* pA = reinterpret_cast<a*>(pC); // C4946
// try the following line instead
// a* pA = static_cast<a*>(pC);
}