Просмотр глобальных переменных с именами в отладчике Visual Studio?

При отладке непроизведенного проекта С++ в Visual Studio 2008 я иногда хочу увидеть значение глобальной переменной. У нас их не так много, но те, которые там все объявлены в пространстве имен, называемом глобальным. например.

namespace global
{
  int foo;
  bool bar;

  ...
}

Проблема заключается в том, что когда код останавливается в точке останова, всплывающая подсказка по умолчанию (от указателя на имя переменной) и quickwatch (shift-f9 от имени переменной) не учитывает пространство имен и, следовательно, выигрывает работа.

Так, например, я могу указать на "foo", и ничего не получается. Если я сменю-f9 на foo, он выведет quickwatch, который затем скажет 'CXX0017: Ошибка: символ "foo" не найден ". Я могу обойти это, вручную отредактировав имя переменной в окне quickwatch, чтобы префикс" global:: "(что громоздко, учитывая, что вам нужно делать это каждый раз, когда вы хотите использовать quickwatch), но нет никакого исправления для всплывающей подсказки что я могу разобраться. Установка" пространства имен по умолчанию" свойств проекта не помогает.

Как я могу сказать отладчику VS использовать пространство имен, которое уже знает, что переменная объявлена ​​в (поскольку она имеет там объявление там), или, наоборот, указывать пространство имен по умолчанию для поиска переменных, если оно не выполняется не найти их?

Мой google-fu не смог найти ответ. В этом отчете указывается одна и та же проблема: MS говорит, что это "по дизайну", но даже в этом случае я надеюсь, что есть какой-то способ обойти это ( возможно, с умным использованием autoexp.dat?)

Ответ 1

Использование полного имени, включая пространство имен в источнике, разрешило его для меня.

например: write

global::bar = (global::foo==0)

вместо

bar = (foo==0)