Перезапись С ++ с VS. Отследить ужасные перемены - PullRequest
1 голос
/ 30 мая 2019

У меня есть огромная программа (проект VS), которая содержит глобальную переменную. Модифицируется из сотен мест. На самом деле это стандартный контейнер STL (std :: vector) и вопрос в том, как я могу отследить эту конкретную переменную модификации? В своей работе я использую VS debugger (Prof 2017 15.9.5)

1 Ответ

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

Мне приходит в голову несколько решений:

  1. Создайте еще один класс, который будет инкапсулировать этот вектор.Затем разрешите пользователям использовать этот вектор, добавив к нему возвращающую ссылку геттера.Затем вы можете установить точку останова в getter.

  2. Установить точку останова памяти для одного из элементов vector, но это решение для конкретной установки, которое может работать не во всех сценариях.

  3. Замените std::vector вашим пользовательским типом с интерфейсом, идентичным интерфейсу std::vector, который будет использовать оригинальный std::vector во внутренних органах.С помощью этого решения вы можете более точно контролировать доступ.

PS удалить этот глобальный как можно скорее.

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