[[ und ]] überladen?!?



  • Wie kann man den [[ und ]] überlagen, die haben doch nen automatischen Überladungsschutz. 🙄



  • meinst Du den oerator[] ?

    der kann ganz normal überladen werden. Etwa so:

    class Foo
    {
    public:
        int& operator[]( unsigned idx ) // nur ein Beispiel
        {
            return m_data.at( idx );
        }
    private:
        std::vector< int > m_data;
    };
    

    Es besteht beim operator[] die Einschränkung dass er genau einen Parameter haben muss. Der Typ des Parameters ist aber frei wählbar.
    Ein 'automatischer Überladungsschutz' ist mir nicht bekannt.

    Gruß
    Werner



  • 😕
    Es gibt den Indizierungsoperator "[]" den man natürlich überschreiben kann.
    "[[" kenn ich nicht, die Standards für C++ und C kennen sowas auch nicht.
    Demzufolge gibt es da nichts was überschrieben werden könnte.
    😕


Anmelden zum Antworten