Оператор приращения работает по-разному во время работы и отладки - PullRequest
0 голосов
/ 23 мая 2019

Вот часть кода, которая работает странно при отладке

public static void main(String[] args) { //Line-1
    int a = 5; //Line-2
    System.out.println(++a); //Line-3
} //Line-4

Когда я запускаю его в обычном режиме, он выводит как 6, что правильно. Но во время отладки я держал точку останова на Line-3, и когда я впервые проверил значение ++a, в следующий раз он показал 6, это было 7,8,9 ...

Когда я закончил программу, в консоли показывался вывод 10. Почему это так?

Эти решения C ++. Поведение Eclipse отличается при отладке и запуске , Как работает оператор Increment ++, когда инициализация не дает правильного представления.

1 Ответ

1 голос
/ 23 мая 2019

Когда вы оцениваете значение выражения ++ a в режиме отладки, вы действительно увеличиваете переменную. Так что это влияет на конечный результат.

...