I am using VC2008 as my complier, and it is surprised to me that an enum could be used without defined:
void func(enum EnumType type)
{
}
Code above could be compiled and run without a problem, could anyone explain why it works?
Update:
I could define an empty enum in C++, as follow:
enum EnumType {};
This is evidently a nonstandard Visual C++ language extension.
You cannot forward declare an
enumin standard C++.