Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: patilanz en 9 Septiembre 2015, 13:37 PM

Título: JS call() o apply() en c++
Publicado por: patilanz en 9 Septiembre 2015, 13:37 PM
Existe alguna función parecida a la de call o apply en js pero en c++ para cambiar el puntero this?

Un saludo
Título: Re: JS call() o apply() en c++
Publicado por: ivancea96 en 9 Septiembre 2015, 15:48 PM
Una función static:

Código (cpp) [Seleccionar]
class Clase{
public:
    static void func(Clase* _this, int param1, string param2);
};


Si quieres un call para cualquier función, pues:

Código (cpp) [Seleccionar]
enum ClaseMethods{
    CLEAR,
    ADD
}

class Clase{
public:
    static void call(Clase* _this, ClaseMethods function, ...){
        switch(function){
        case CLEAR:
            _this->clear();
           break;
        case ADD:
           int var = *(int*)&((&function)[1]);
            _this->add(var);
           break;
    }
};


Bueno, es un ejemplo a mano alzada.

No sé si es lo que buscabas (?)