Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
"class::identifier" : nem érvényes használatdeklaráció nem osztály hatókörben
Megjegyzések
Helytelenül használt egy using deklarációt.
Ez a hiba a Visual Studio 2005-höz készült fordítómegfelelőség-munka eredményeként hozható létre: már nem érvényes using a beágyazott típusra vonatkozó deklaráció; explicit módon kell minősítenie a beágyazott típusra vonatkozó összes hivatkozást, el kell helyeznie a típust egy névtérben, vagy létre kell hoznia egy típusdefet.
Példák
Az alábbi példa C2885-öt hoz létre.
// C2885.cpp
namespace MyNamespace {
class X1 {};
}
struct MyStruct {
struct X1 {
int i;
};
};
int main () {
using MyStruct::X1; // C2885
// OK
using MyNamespace::X1;
X1 myX1;
MyStruct::X1 X12;
typedef MyStruct::X1 abc;
abc X13;
X13.i = 9;
}
Ha a using kulcsszót egy osztálytaggal használja, a C++ megköveteli, hogy ezt a tagot egy másik osztályban (származtatott osztályban) definiálja.
Az alábbi példa C2885-öt hoz létre.
// C2885_b.cpp
// compile with: /c
class A {
public:
int i;
};
void z() {
using A::i; // C2885 not in a class
}
class B : public A {
public:
using A::i;
};