Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
kan casting_operator niet gebruiken om te converteren van 'type1' naar 'type2'
Opmerkingen
Een cast-operator probeerde te converteren tussen incompatibele typen. U kunt bijvoorbeeld de operator dynamic_cast niet gebruiken om een aanwijzer te converteren naar een verwijzing. De dynamic_cast operator kan niet worden gebruikt om kwalificaties weg te werpen. Alle kwalificaties voor de typen moeten overeenkomen.
U kunt de const_cast operator gebruiken om kenmerken zoals const, volatileof __unaligned.
Voorbeelden
In het volgende voorbeeld wordt C2682 gegenereerd:
// C2682.cpp
class A { virtual void f(); };
class B: public A {};
void g(A* pa) {
B& rb = dynamic_cast<B&>(pa); // C2682
}
In het volgende voorbeeld wordt C2682 gegenereerd:
// 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
}