Zeiger auf erstes vector Element zurückgeben - Problem mit const



  • Hallo.

    Ich zeig euch jetzt erstmal meinen Quelltext, der momentan funktioniert.

    class Array
    {
    public:
    	operator int*()
    	{
    		return &entries[0];
    	}
    private:
    	std::vector<int> entries;
    };
    

    operator int* soll also einen Zeiger auf das erste Element im vector zurückgeben. Jetzt möchte ich die Memberfunktion operator int*() aber gerne const haben.

    operator int*() const
    {
    	return &entries[0];
    }
    

    Dann meldet der Compiler aber: error: invalid conversion from `const int*' to `int*'

    Wie macht man das richtig? Ich hoffe das geht. 🙄



  • Entschuldigt Leute. War ganz einfach.

    operator const int*() const
    {
        return &entries[0];
    }
    


  • operator const int*() const {
       return &entries[0];
    }
    

Anmelden zum Antworten