Forum » Programiranje » [C++] Razred, struktura, kazalec na funkcijo
[C++] Razred, struktura, kazalec na funkcijo
mujek ::
Pozdravljeni,
Imam en razred. V tem razredu imam definirano strukturo, in polje te strukture:
Zdaj bi rad klical funkcijo na katero kaže gumbi[neka].klici.
Kazalec nastavim z:
klicat pa sem probal z
vendar mi ni uspelo.
Prosim če mi lahko kdo pomaga, in me pouči o tem. Sem googlal vendar nisem našel takega primera.
Hvala.
Imam en razred. V tem razredu imam definirano strukturo, in polje te strukture:
class Ui { public: bool prvic(int st); bool drugic(int st); ..bla bla.. private: struct Gumb { int st; char niz[10]; WINDOW *win; //kazalec na okno bool (Ui::*klici)(int); //kazalec na funkcijo }; Gumb gumbi[8]; ..bla bla.... };
Zdaj bi rad klical funkcijo na katero kaže gumbi[neka].klici.
Kazalec nastavim z:
gumbi[i].klici = &Ui::prvic;
klicat pa sem probal z
out = (*this.gumbi.*klici)(i);
vendar mi ni uspelo.
Prosim če mi lahko kdo pomaga, in me pouči o tem. Sem googlal vendar nisem našel takega primera.
Hvala.
nimbix ::
Poskusi tako:
Tole pomeni: na instanci "gumb" kliči metodo, na katero kaže "gumb.klici".
(gumb.*(gumb.klici))(i);
Tole pomeni: na instanci "gumb" kliči metodo, na katero kaže "gumb.klici".
mujek ::
Hvala na odgovoru.
Sem poskušal pa mi ni hotel prevesti.
Zdaj mi dela z
(imam to kodo v eni metodi od objekta).
Torej če si prav predstavljam. na instanci *this (trenutna instanca objekta), pokliči metodo na katero kaze kazalec?
Sem poskušal pa mi ni hotel prevesti.
Zdaj mi dela z
bool Ui::Click_handler() { bla bla.. for (i = 0; i < 8 i++) { out = (*this.*(gumbi[i].klici))(i); bla bla...
(imam to kodo v eni metodi od objekta).
Torej če si prav predstavljam. na instanci *this (trenutna instanca objekta), pokliči metodo na katero kaze kazalec?
Tutankhamun ::
(this->*gumbi[i].klici)(i);
AMD Phenom QUAD 9950 Black Edition, 8GB
Zgodovina sprememb…
- spremenil: Tutankhamun ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | C# povezava forma in classaOddelek: Programiranje | 2357 (1820) | Miko55 |
» | [C] struct in int[] (strani: 1 2 )Oddelek: Programiranje | 7359 (6432) | MrBrdo |
» | [C++] Linker errorOddelek: Programiranje | 1291 (1291) | Quikee |
» | [JAVA] rekurzivni izpis seznama z kazalciOddelek: Programiranje | 1783 (1541) | l0g1t3ch |
» | [c++] globalne spremenljivke (extern)Oddelek: Programiranje | 1592 (1465) | Vesoljc |