Compiler Warning (level 4) C4516 (Windows CE 5.0)

Send Feedback

'class::symbol' : access-declarations are deprecated;
member using-declarations provide a better alternative

The ANSI C++ committee has declared access declarations (changing the access of a member in a derived class without the using keyword) to be outdated. Access declarations may not be supported by future versions of C++.

The following example shows how this message might occur.

class A {
public:
x(char);
};

class B : protected A {
public:
A::x;  // access-declaration, warning C4516
};

Rewrite class B with the using keyword:

class B : protected A {
public:
using A::x; // using-declaration, ok
};

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.