base a declares a variable a of type base and calls its default constructor (assuming it’s not a builtin type). base a(); declares a function a that takes no parameters and returns type base .
base a declares a variable a of type base and calls its default constructor (assuming it’s not a builtin type). base a(); declares a function a that takes no parameters and returns type base .