Compiler Error C2585


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Compiler Error C2585.

explicit conversion to 'type' is ambiguous

The type conversion can produce more than one result.

To fix by checking the following possible causes

  1. Converting from a class or structure type based on multiple inheritance. If the type inherits the same base class more than once, the conversion function or operator must use scope resolution (::) to specify which of the inherited classes to use in the conversion.

  2. A conversion operator and a constructor have been defined making the same conversion.