Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
«Operador» : conversões ambíguas de «tipo1» para «tipo2»
Observações
Nenhuma conversão do tipo1 para o tipo 2 foi mais direta do que qualquer outra. Sugerimos duas soluções possíveis para converter de tipo1 para tipo2. A primeira opção é definir uma conversão direta de tipo1 para tipo2, e a segunda opção é especificar uma sequência de conversões de tipo1 para tipo2.
Exemplo
O exemplo a seguir gera C2594. A resolução sugerida para o erro é uma sequência de conversões:
// 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));
}