'class::symbol' : access-declarations are deprecated; member using-declarations provide a better alternative
Here deprecated means the ANSI C++ committee has declared access-declarations (changing the access of a member in a derived class without the using keyword, see the example below) as outdated. You should use using-declarations because access-declarations will be removed by the committee in future versions of C++.
The following code shows class B derived from base class A.
class A {
public:
x(char);
};
class B : protected A {
public:
A::x; // access-declaration, warning C4516
};
To use using-declarations, rewrite class B with the using keyword:
class B : protected A {
public:
using A::x; // using-declaration, ok
};