Partilhar via


Aviso do compilador (nível 4) C4913

operador binário definido pelo usuário '', existe, mas nenhuma sobrecarga poderia converter todos os operandos, operador binário interno padrão '', usado

Observações

Uma chamada para o operador de vírgula embutido ocorreu em um programa que também tinha um operador de vírgula sobrecarregado; uma conversão que você pensava que poderia ter ocorrido não ocorreu.

Example

O exemplo de código a seguir gera C4913:

// C4913.cpp
// compile with: /W4
struct A
{
};

struct S
{
};

struct B
{
   // B() { }
   // B(S &s) { s; }
};

B operator , (A a, B b)
{
   a;
   return b;
}

int main()
{
   A a;
   B b;
   S s;

   a, b;   // OK calls user defined operator
   a, s;   // C4913 uses builtin comma operator
           // uncomment the conversion code in B to resolve.
}