C++ Classes default constructor
问题 Earlier I asked why this is considered bad: class Example { public: Example(void); ~Example(void); void f() {} } int main(void) { Example ex(); // <<<<<< what is it called to call it like this? return(0); } Now, I understand that it's creating a function prototype instead that returns a type Example. I still don't get why it would work in g++ and MS VC++ though. My next question is using the above, would this call be valid? int main(void) { Example *e = new Example(); return(0); } ? What is