Вы можете использовать KeyValuePair<T1 key, T2 value>. Хотя тут тоже поля key и value менять нельзя. Но такое ограничение легко обойти следующим образом:
Код:
public class GenContainer<T>
{
public T inner;
}
Сигнатура функции, возвращающей 2 массива будет выглядеть примерно так:
Код:
public KeyValuePair<GenContainer<double[]>, GenContainer<double[]>> getTwoArrays()
{
}
При этом сами поля key и value менять будет нельзя, но поле inner, находящееся внутри них, менять будет можно:
Код:
KeyValuePair<GenContainer<double[]>, GenContainer<double[]>> res = getTwoArrays();
res.key.inner= new double [N];
res.value.inner= new double [N];