Callbacks en C++

Páxina inicial

Responder a esta mensaxe
Autor: Frédéric
Data:  
Para: Guilde
Asunto: Callbacks en C++
Hello,

Je cherche à implémenter des callbacks vers des méthodes en C++ sur
Arduino.

Je ne cherche pas à faire un truc générique (template, functors and co), je
peux accepter que le type du callback soit en dur. Par contre, mon souci
c'est que je ne sais pas comment écrire la signature de ce callback
aux divers endroits nécessaires :o/

Si quelqu'un a un exemple, je suis preneur.

Merci d'avance.

--------------------------------------------

    class A:


        friend class B;


        public:
            A(void (*callback)(void)):  // <<<<<< ???
            m_callback(callback)
            {
            }


        private:
            void (*m_callback)(void);   // <<<<<< ???


    class B:
        public:
            B()
            {
                m_A = new A(m_toto);  // <<<<<< ???
            };
            void titi(void)
            {
                m_A->m_callback();
            }
        private:
            void m_toto(void)
            {
            };
            A* m_a;


    int main(void)
    {
        B b();
        b.titi();
    }


-- 
    Frédéric