Share via


Upozornění kompilátoru (úroveň 4) C4913

uživatelem definovaný binární operátor ', existuje, ale žádné přetížení nemůže převést všechny operandy, výchozí předdefinovaný binární operátor ',' použitý

Volání předdefinovaného operátoru čárky došlo v programu, který měl také přetížený operátor čárky; převod, který jste si mysleli, že došlo k chybě.

Následující ukázka kódu generuje 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.
}