индекс исходного списка меняется снова и снова [дубликат]

Это означает, что указанная переменная не указана ни на что. Я мог бы сгенерировать это так:

SqlConnection connection = null;
connection.Open();

Это вызовет ошибку, потому что, пока я объявил переменную «connection», она не указала ни на что. Когда я пытаюсь вызвать член «Open», для его устранения нет ссылки, и он будет вызывать ошибку.

Чтобы избежать этой ошибки:

  1. Всегда инициализируйте свои объекты, прежде чем пытаться что-либо с ними делать.
  2. Если вы не уверены, что объект имеет значение null, проверьте его с помощью object == null.

Инструмент Resharper JetBrains определит каждое место в вашем коде, которое имеет возможность ошибки нулевой ссылки, позволяя вам ввести нулевую проверку. Эта ошибка является источником ошибок номер один, IMHO.

105
задан Alex 2 November 2010 в 20:04
поделиться

7 ответов

83
ответ дан Ignacio Vazquez-Abrams 26 August 2018 в 03:18
поделиться
4
ответ дан cizixs 26 August 2018 в 03:18
поделиться
1
ответ дан Jorge 26 August 2018 в 03:18
поделиться
2
ответ дан ktdrv 26 August 2018 в 03:18
поделиться
102
ответ дан martineau 26 August 2018 в 03:18
поделиться

Нет, вы не изменили бы «содержимое» этого списка, если бы вы могли так изменить строки. Но на Python они не изменяются. Любая операция string возвращает новую строку.

Если у вас есть список объектов, которые, как вы знали, изменялись, вы можете сделать это, пока вы не измените фактическое содержимое списка.

Таким образом, вам нужно будет сделать какую-то карту. Если вы используете выражение генератора, то [операция] будет выполняться по мере повторения и вы сохраните память.

3
ответ дан Skurmedel 26 August 2018 в 03:18
поделиться
15
ответ дан WaKo 26 August 2018 в 03:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: