Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

One baffling thing I see people do with typedefing function pointers is insisting on adding in the pointer part in the typedef which just complicates and hides things.

If you want to typedef a function pointer, make a completely ordinary function declaration, then slap 'typedef' at the beginning, done. This does require you to do "foo_func *f" instead of "foo_func f" when declaring variables, but that is just clearer imo.

    typedef int foo_func(int); // nice

    typedef int (*foo_func)(int); // why?




Why do you need the `*` to be part of every variable/member declaration?



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: