编译器错误 C2886

“class::identifier”:在成员 using 声明中不能使用符号

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;
};