Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
illegal index, indirection not allowed
A subscript is applied to an expression that does not evaluate to a pointer.
Example
C2107 can occur if you incorrectly use the this
pointer of a value type to access the type's default indexer. For more information, see Semantics of the this
pointer.
The following sample generates 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();
}