Возвращаемым параметром функции может быть массив?

 
Пишу так
double h3tf()
{
   ///////////////////////////
   return(TimeH3,OpenH3,HighH3,LowH3,CloseH3);
}


выдается ошибка

')' - wrong parameters count

 
Пиши так:
void start()
{
  double arr[5];

  h3tf(arr);
}

void h3tf(double& m[])
{
  ///////////////////////////
  arr[0]=TimeH3;
  arr[1]=OpenH3;
  arr[2]=HighH3;
  arr[3]=LowH3;
  arr[4]=CloseH3;
}
 
Пиши так:
void start()
{
  double arr[5];

  h3tf(arr);
}

void h3tf(double& m[])
{
  ///////////////////////////
  arr[0]=TimeH3;
  arr[1]=OpenH3;
  arr[2]=HighH3;
  arr[3]=LowH3;
  arr[4]=CloseH3;
}



У меня это 5 разных массивов. А у вас получается 1 массив на выходе.
То есть мне надо на выходе получить 5 сформированных массивов.
Или я слишком многого хочу?
 
У меня это 4 разных массива. А у вас получается 1 массив на выходе.
То есть мне надо на выходе получить 5 сформированных массивов.
Или я слишком многого хочу?

Тогда так
void start()
{
  double TimeH3[], OpenH3[], HighH3[], LowH3[], CloseH3[];

  // Изменение размерности массивов функцией ArrayResize()

  h3tf(TimeH3, OpenH3, HighH3, LowH3, CloseH3);
}

void h3tf(double& TimeH3[], double& OpenH3[], double& HighH3[], double& LowH3[], double& CloseH3[])
{
  // Обработка массивов
}
 
Правда мне не совсем так надо. Мне надо из функции передать массивы в главную функцию.
Но идею понял.
Спасибо!
Причина обращения: