Я отлаживаю часть большого проекта в Visual Studio 2005 и шаг за шагом прошагиваю код.
int speed = this->values.speed;
int ref = this->values.ref_speed;
После перехода через первую строку values.speed имеет значение 61, но по какой-то причине скорости присваивается значение 58. После второй строки values.ref_speed имеет значение 58, но ref присваивается значение 30.
При паузе вы видите, что исходные значения на самом деле равны 61 и 58 соответственно, но сохраняемые значения отличаются.
Что вызывает такое поведение?