Delen via


Compilerfout C2594

operator: dubbelzinnige conversies van 'type1' naar 'type2'

Opmerkingen

Geen conversie van type1 naar type2 was directer dan andere. We raden twee mogelijke oplossingen aan om te converteren van type1 naar type2. De eerste optie is het definiƫren van een directe conversie van type1 naar type2 en de tweede optie is het opgeven van een reeks conversies van type1 naar type2.

Voorbeeld

In het volgende voorbeeld wordt C2594 gegenereerd. De voorgestelde oplossing voor de fout is een reeks conversies:

// C2594.cpp
// compile with: /c
struct A{};
struct I1 : A {};
struct I2 : A {};
struct D : I1, I2 {};

A *f (D *p) {
   return (A*) (p);    // C2594

// try the following line instead
// return static_cast<A *>(static_cast<I1 *>(p));
}