Поделиться через


Ошибка компилятора C2886

Class::identifier: символ не может использоваться в элементе using-declaration

Объявление using использует символ, например имя пространства имен. using Объявление предназначено для объявления элементов базового класса.

Следующий пример приводит к возникновению ошибки C2886:

// C2886.cpp
// compile with: /c
namespace Z {
    int i;
}

class B {
protected:
    int i;
};

class D : public B {
    // Error: Z is a namespace
    using Z::i;   // C2886

    // OK: B is a base class
    using B::i;
};