c++ only allows only void to define empty parameter list typedef defines a new type therfore its not valid in c++