Я получил ошибку C2440: - PullRequest
       1

Я получил ошибку C2440:

1 голос
/ 02 апреля 2012

Я получил следующую ошибку

ошибка C2440: «инициализация»: невозможно преобразовать из «const int» в «int» [16]

Мой код такой

static int Count[MAX_STATION_NO] = 0;

Я получил ошибку в строке выше. Может кто-нибудь сказать мне, в чем проблема в приведенной выше строке?

Ответы [ 5 ]

0 голосов
/ 02 апреля 2012

фигурные скобки {} необходимы для инициализации массивов.Например:

static int Count[MAX_STATION_NO]={1,2,3};

Может быть, эта ссылка может вам помочь: http://www.cplusplus.com/doc/tutorial/arrays/

0 голосов
/ 02 апреля 2012

Эта строка объявляет массив размером 16, затем вы присваиваете ему одно число, что не является синтаксически правильным.Вам нужно использовать инициализатор массива:

{ 16, 2, 77, 40, 12071 ... }
0 голосов
/ 02 апреля 2012

Вы создаете массив и устанавливаете значение массива в '0'. Я думаю, что вы хотите сделать это:

static int Count[MAX_STATION_NO] = {0}
0 голосов
/ 02 апреля 2012

Ваш инициализатор должен быть в скобках:

static int Count[MAX_STATION_NO] = { 0 };

Кстати: содержимое статических массивов в любом случае инициализируется с 0, так что вышеупомянутое эквивалентно:

static int Count[MAX_STATION_NO];
0 голосов
/ 02 апреля 2012

Вы рассматриваете массив как указатель, что недопустимо.Вы не можете присвоить массив значению.

Возможно, вы хотите это:

static int Count[MAX_STATION_NO] = {0};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...