Пожалуйста, попробуйте выполнить следующие действия:
******* Наконец, это делается ******
Я нашел этот запись в блоге , который имеет решение. Хотя я предпочел бы быть в состоянии сказать, "не ступают ни во что, что не является частью этого проекта", это выглядит осуществимым.
РЕДАКТИРОВАНИЕ: После рассмотрения нескольких блогов и групп новостей, метод должен добавить запись для каждой функции, что Вы не хотите ступать в под этим ключом реестра (принимающий VS 2005):
32 bit Windows \\HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\8.0\NativeDE\StepOver 64 bit Windows \\HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\VisualStudio\8.0\NativeDE\StepOver
Номера версий для пути:
Visual Studio 2005: 8.0 Visual Studio 2008: 9.0 Visual Studio 2010: 10.0 Visual Studio 2012: 11.0 Visual Studio 2013: 12.0
Этот ключ содержит ряд правил, которые влияют, как продвижение выполняется. Каждое правило определяется как отдельная запись, имя которой является десятичным числом и чье значение является шаблоном имени функции, который определяет, на какие функции мы хотим влиять. например,
"10" = "boost\:\:scoped_ptr.*\:\:.*=NoStepInto"
предотвращает продвижение в повышение:: функции scoped_ptr.
правила оценены от высоко до низких значений, пока шаблон соответствия не найден, или нет никаких оставленных правил. В этом случае функция ступается в.
Имена функций являются регулярными выражениями.
Двоеточия должны быть заключены в кавычки с обратной косой чертой.
можно определить StepInto, а также NoStepInto. Это дает Вам способ постараться не ступать во всех кроме нескольких функций в том же объеме/пространстве имен.
Visual Studio Перезапуска для взятия изменений в реестре.
Существует также "шаг в определенную" запись в контекстном меню, которое перечислит функции, которые могли ступиться в на текущей строке, и можно выбрать тот, который Вы хотите.
Моя копия - мимо:
Предотвращение, Ступающее В Вещи
, часто полезно постараться не ступать в некоторый общий код как конструкторы или перегруженные операторы. autoexp.dat обеспечивает эту возможность. Добавьте раздел, названный" [ExecutionControl]". Добавьте ключи, где ключ является именем функции, и значение является "NoStepInto". Можно определить звездочку (*) как подстановочный знак как первый набор двоеточий для пространства имен или класса.
autoexp.dat только читается на запуске Visual Studio.
Для игнорирования функции myfunctionname и всех вызовов к классу CFoo:
[ExecutionControl]
myfunctionname=NoStepInto
CFoo::* = NoStepInto
Для игнорирования конструкции и присвоения MFC CStrings: (Заметьте дополнительное = в CString:: оператор =.)
[ExecutionControl]
CString:: CString=NoStepInto
CString:: оператор == NoStepInto
Для игнорирования всех вызовов ATL:
[ExecutionControl]
ATL::* = NoStepInto
от этого ( http://www.highprogrammer.com/alan/windev/visualstudio.html ) статья.
Также можно использовать "Шаг В Определенную Функцию" из pupup меню.
Редактирование Извините, похоже, что autoexp.dat не делает работ в по сравнению с 2003/2005. То же можно сделать с настройками реестра. http://groups.google.com/group/microsoft.public.vsnet.debugging/browse_thread/thread/b03dee5a626470c0/26addb1b539883e8
VS6 раньше позволяла Вам определить значения в autoexp файле, которые позволяют Вам пропустить продвижение в общие функции (например, представить конструкторов в виде строки). При запуске с VS7 эти исключения были перемещены в реестр. Простота использования получает серьезный удар.
В VS7 и более высокой Microsoft, в их мудрости, переместил эти исключения в реестр. Вот некоторые примеры:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\NativeDE\StepOver]
"10"="CString\\:\\:CString=NoStepInto"
"11"=".*\\.c_str.*=NoStepInto"
Ключевые имена представляют поисковый порядок. Значения ключа содержат регулярные выражения VS для поиска.
, Если Вы создаете свои собственные исключения, убедиться завоевать репутацию из представления дизассемблирования. Объявление в источнике не может соответствовать сгенерированному имени компилятора, специально для шаблонных функций.