Sdílet prostřednictvím


Chyba kompilátoru C2911

'member' : nelze deklarovat ani definovat v aktuálním oboru.

Poznámky

Uvnitř oboru názvů, třídy nebo funkce můžete definovat pouze člena stejného oboru názvů, třídy nebo funkce nebo člena, který je uzavřen stejným oborem názvů, třídou nebo funkcí.

Example

Následující příklad generuje C2911:

// C2911.cpp
struct A;

namespace M {
   struct D;
}

namespace N {
   struct C;

   namespace O {
      struct B;
   }

   // in N
   struct ::A {};   // C2911  A is member of global NS
   struct O::B{};   // OK B is in O, O is inside of N
   struct C {};     // OK C is member of N
   struct M::D {};  // C2911 D is member of M, M not enclosed by N
}