operator== mit 2 parameter



  • hola

    gibt´s eigendlich operator== oder operator= mit 2 parameter ?

    also z.b. int operator==(param1, param2);

    wenn ja, wie wuerde sowas dann in der verwendung aussehen ?

    Meep Meep



  • der operator==() hat ausserhalb von klassen 2 parameter und innerhalb von klassen, 1 parameter.

    Möglicher Verwendungszweck;

    Foobar A; 
     Foobar B;
    
     std::cout << " A " << ( A == B ? "==" : "!=" ) << " B " << std::endl;
    //                       ^^^^^^
    //                        Hier
    

    MfG

    // Edit: Btw. der operator == gibt bool und nicht int zurück



  • Meep Meep schrieb:

    gibt´s eigendlich operator== oder operator= mit 2 parameter ?

    'operator ==' ja, dazu musst du ihn ausserhalb der klasse definieren. 'operator =' nein, denn dieser muss innerhalb der Klasse deklariert sein, und dann gibts halt nur einen Parameter.

    Meep Meep schrieb:

    wenn ja, wie wuerde sowas dann in der verwendung aussehen ?

    bool operator ==(const T& lhs, const T& rhs)
    {
        // bla
    };
    

    T steht dabei für den gewünschten Typ. Man kann natürlich auch unterschiedliche Typen für T benutzen.



  • Omg er hat ja auch nach op= gefragt *g* ich hab nur den op== registriert *g*

    😮


Anmelden zum Antworten