Sdílet prostřednictvím


Chyba kompilátoru C2803

Operátor "operator" musí mít alespoň jeden formální parametr typu třídy.

Poznámky

Přetížený operátor nemá parametr typu třídy.

Aby bylo možné napsat "a < b" (a) třídy A, musíte předat alespoň jeden parametr odkazem (nikoli ukazatele, ale odkazy) nebo hodnotou.

Pokud jsou oba parametry ukazatele, bude to čisté porovnání adres ukazatelů a nebude používat uživatelsky definovaný převod.

Example

Následující příklad vygeneruje C2803:

// C2803.cpp
// compile with: /c
class A{};
bool operator< (const A *left, const A *right);   // C2803
// try the following line instead
// bool operator< (const A& left, const A& right);