Jak interpretować „operator const char * ()” przy przeciążaniu operatora?
Patrzyłem na jedną z implementacji klasy String i zauważyłem następujący przeciążony operator ==.
String f = "something";
String g = "somethingelse";
if (f == g)
cout << "Strings are equal." << endl;
bool operator==(String sString)
{
return strcmp(operator const char*(), (const char*)sString) == 0;
}
Zrozumiałem większość tej części z wyjątkiemoperator const char*()
do czego dokładnie służy? Mam bardzo podstawową wiedzę na temat przeciążania operatora, czy ktoś może rzucić na to trochę więcej światła?