Aviso do compilador (nível 4) C4913
operador binário definido pelo usuário ',' existe mas nenhuma sobrecarga pôde converter todos os operando, operador binário interno padrão ',' usado
Uma chamada para o operador de vírgula interno ocorreu em um programa que também tinha um operador de vírgula sobrecarregado; uma conversão que você pensou que poderia ter ocorrido não.
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.
}