Named Enums

In C++, A::b::c is invalid. Consider the following declaration:

class A
{
    enum b
    {
        c = 1;
    }
};

The proper syntax is A::c. VS2002 accepted it, but VS2005 will complain. If you work in both .NET and C++, this can become confusing.

Now, at least, the compiler tells you about it.