I have a C++/CLI class:
public ref class Foobar
{
public:
// methods here etc..
// operator overload
double operator[](int index);
}
How do I access Foobar from C# given that I’ve tried:
Foobar foo = new Foobar();
int i = foo[1];
and I get CS0021: Cannot apply indexing with [] to an expression of type 'Foobar'
operator[]gets special treatment in C++/CLI (and all .NET languages) – rather than being defined as an operator, it’s defined as a property nameddefault, known as the default index property.