У меня есть этот кодC# Cast массив сопрягаемых Reference перед отправкой
public MyResponse innerFunc(ref MyElem[]);
public IResponse myFunc(ref IElem[] myElem)
{
return this.innerFunc(ref (A_CAST_OR_SOMETHING) myElem);
}
Где
- MyResponse: IResponse
- MyElem: IElem
- A_CAST_OR_SOMETHING должен быть MyElem []
Когда я это делаю
public IResponse myFunc(ref IElem[] myElem)
{
return this.innerFunc(ref ((MyElem[]) myElem));
}
В Higlights компилятор скобок (только скобки) и сказать:
реф или из аргументов должен быть назначаемым переменной
Что я должен быть делать?
'System.InvalidCastException: невозможно сбрасывать объект типа« IElem [] »для ввода« MyElem [] ». at MyClass.myFunc (ref IElem [] myElem) ' – apacay
Является ли' MyElem' строковым типом или типом класса? Я был уверен, что вы можете создавать массивы классов в обоих направлениях ... –
это класс. Я тоже так думал. – apacay