Я получил эту ошибку: Ошибка 1: Невозможно неявно преобразовать тип 'double [] []' в 'double []' - PullRequest
1 голос
/ 23 января 2011

Я получил этот код:

double[][] ou = new double[h][w];

for(i=0;i<h;i++)
   for(int j=0;j<w;j++)
      ou[i][j] = sortie[z++];

return ou;  

И я получаю это 2 ошибки:

Error 1: Cannot implicitly convert type 'double[][]' to 'double[]'

указано "return ou"

Error 2: Invalid rank specifier: expected ',' or ']'

указано"double [] [] ou = new double [h] [w];"

РЕДАКТИРОВАТЬ: я пытаюсь преобразовать код из Java в C #, и это было у меня "double [] [] ou =новый двойной [ч] [ш]; "

Ответы [ 2 ]

0 голосов
/ 23 января 2011

То, что вы хотите создать, - это многомерный массив, но создаете Jagged массив, который является массивом массивов.Посмотрите на этот вопрос SO на предмет различий.

Многомерные массивы и Jagged Array

Так что в самой первой строке вы не можете создать массив с new double[h][w], что не разрешено1008 *

вам нужно создать массив таким образом

double[,] array = new double [h,w];

и получить доступ к таким элементам

array[i,j] = somevalue;
0 голосов
/ 23 января 2011

Попробуйте:

double[,] ou = new double[h,w];
for(i=0;i<h;i++)
       for(int j=0;j<w;j++)
          ou[i,j] = sortie[z++];

return ou;  

Синтаксис для многомерного массива использует запятую между измерениями, а не двойные скобки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...