Avviso del compilatore (livello 4) C4913

l'operatore binario definito dall'utente ',' esiste, ma nessuno degli overload può convertire tutti gli operandi. Verrà utilizzato l'operatore binario ',' incorporato predefinito.

Si è verificata una chiamata all'operatore virgola predefinito in un programma che ha anche un operatore virgola di overload; una conversione che si riteneva completata in realtà non è stata eseguita.

L'esempio di codice seguente genera l'errore 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.
}