Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno "callback" v C++Builderu

mám takovýto nějaký kód, překladač hlásí chybu na řádku v hlavní části "Could not find a match for 'myfce(int,void)'"
Vyzkoušel jsem několik kombinací hvězdiček, závorek a přetypování ale nic nepomohlo,
proto prosím, poraďte.

typedef void __fastcall ( * clbk) (int n);

int __fastcall myfce (int count, clbk fce )
{
  ... neco ...
  fce(58);
  ... neco ...
)


void __fastcall AAA (int n);
{
  ... neco ...
}


  ... hlavni cast ...
  myfce( 1, AAA ); //// chyba

Předmět Autor Datum
Kĺúčové slovo __fastcall patrí k menu funkcie, nie k typu návratovej hodnoty. typedef void (__fastc…
los 05.04.2007 20:34
los
Návratový typ je void, to "clbk" je název typu. Cílem je, abych v hlavním programu dynamicky určil,…
krok 06.04.2007 08:29
krok
Tak už jsem na to přišel. Kód je dobře, až na to, že to "AAA", které jsem tam cpal v hlavní části, j… poslední
krok 06.04.2007 09:49
krok

Kĺúčové slovo __fastcall patrí k menu funkcie, nie k typu návratovej hodnoty.

typedef void (__fastcall *clbk)(int n);

Predpokladám, že nesprávna uzatváracia zátvorka tela funkcie myfce a bodkočiarka navyše medzi deklaráciou a telom funkcie AAA vznikli pri prepisovaní kódu.

Vyzkoušel jsem několik kombinací hvězdiček, závorek a přetypování ale nic nepomohlo

Správny inžiniersky prístup. :-D

Návratový typ je void, to "clbk" je název typu. Cílem je, abych v hlavním programu dynamicky určil, co se ma zavolat z funkce "myfce". Přesunutí "__fastcall" do závorky nepomohlo. Princip je podobný jako Event u komponenty ale nějak to nemůžu dát dohromady.

Správny inžiniersky prístup. :-D

Jo, jo.;-)

Zpět do poradny Odpovědět na původní otázku Nahoru