Kompilatorfel C2107

olagligt index, indirection tillåts inte

Anmärkningar

Ett nedsänkt uttryck tillämpas på ett uttryck som inte utvärderas till en pekare.

Exempel

C2107 kan inträffa om du felaktigt använder pekaren this för en värdetyp för att komma åt typens standardindexerare. Mer information finns i Semantik för pekarenthis.

I följande exempel genereras C2107.

// C2107.cpp
// compile with: /clr
using namespace System;

value struct B {
   property String ^ default[String ^] {
      String ^ get(String ^ data) {
         return "abc";
      }
   }
   void Test() {
      Console::WriteLine("{0}", this["aa"]);   // C2107
      Console::WriteLine("{0}", this->default["aa"]);   // OK
   }
};

int main() {
   B ^ myb = gcnew B();
   myb->Test();
}