Zeiger auf Methode innerhalb einer Klasse



  • Sehr geehrte Damen und Herren!

    Folgender Auszug aus einer Klasse:
    Ich versuche einen Zeiger (*lang) auf eine Methode (int getLength();)
    zu stellen. Die Methode ist außerhalb der Klasse definiert.
    Beim Kompilieren kommen viele Fehlermeldungen.

    Wo habe ich falsch gedacht, denn die Erstellung eines solchen
    Zeigers außerhalb einer Klasse auf eine Funktion auch außerhalb der Klasse
    funktioniert.

    MfG - fotofoto

    class MyString {
        private:
            char *m_mystring;
    
        public:
            // Konstruktoren
            MyString();
            MyString(char *text);
            MyString(int i_zahl);
            // Destruktor
            ~MyString();
    
            // eigenen Kopierkonstruktor erstellen
            MyString(const MyString &source);
    
            int getLength();
            int (*lang)();
            lang = &getLength;
    };
    


  • Stichpunkt Zeiger auf Memberfunktion:

    private: 
            char *m_mystring; 
    
        public: 
            // Konstruktoren 
            MyString(){lang = getLength;}
            MyString(char *text); 
            MyString(int i_zahl); 
            // Destruktor 
            ~MyString(); 
    
            // eigenen Kopierkonstruktor erstellen 
            MyString(const MyString &source); 
    
            int getLength(); 
            int (MyString::*lang)(); 
    
    };
    

    Gruß


Anmelden zum Antworten