Typedef'ing a function

E

Enrico Porreca

Is the following a legal typedef? (gcc -Wall -ansi -pedantic says it's ok)

typedef void Callback(void *obj);

I mean "a Callback is a function taking void * and returning void" (not
"a pointer to function"). Then of course I would use pointers to
Callback, like

void apply(Callback *f, void *a[], size_t size)
{
size_t i;

for (i = 0; i < size; i++)
f(a);
}

I prefer it to

typedef void (*Callback)(void *obj);

because I don't like hiding pointers behind typedefs.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,431
Messages
2,571,679
Members
48,796
Latest member
Greg L.

Latest Threads

Top