[elektro] C typedef kérdés
Palasik Sandor
palasik at mail.datanet.hu
Thu Apr 24 21:01:21 CEST 2008
A typedefben csak dekorációnak vannak a paraméternevek, de a függvényhez
kellenek, azaz a typedefből csak ennyit "használ" :
typedef (CondFunc)(int , int*);
A változóneveket csak azért lehet beírni, hogy egyszerűen lehessen a
függvény fejlécéből deklarációt csinálni a rámutató pointerhez.
> CondFunc AlrCond ;
> függvény hivatkozást simán elfogadja.
Igen, mert ez csak annyit állít, hogy van egy ilyen nevű függvény ilyen
típusú paraméterekkel. A név szintén dekoráció. Ha meg is adod, nem
ellenőrzi, hogy ugyanazokat a neveket használod-e a definícióban is.
Tehát teljesen legális pl:
int x(int ez);
int x(int az)
{
return az;
}
> CondFunc AlrCond(int i, int*p)
> {};
> már hibátlanul fordítja.
Ide és csak ide már valóban kellenek a nevek. Mondjuk a pontosvessző viszont
nem kell.
Palasik Sándor
More information about the Elektro
mailing list