Код отладки C ++ в visual studio из кода python, запущенного в eclipse

Кто-нибудь знает, как мы можем это сделать? У меня есть код python в eclipse и всякий раз, когда он вызывает функции c ++, я хочу, чтобы точка останова перешла к проекту visual studio c ++.

2 Solutions collect form web for “Код отладки C ++ в visual studio из кода python, запущенного в eclipse”

Вы можете использовать __debugbreak в визуальной студии, чтобы каждый раз при вызове кода он запускал отладчик (вы можете искать функцию в MSDN).

Вставьте инструкцию в функцию C ++ (или метод класса), которую вы хотите отлаживать, например

 void foo() { __debugbreak(); [...] } 

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

Это замена старого __asm { int 3 } .

Если приложение C ++ работает как отдельный процесс, то это довольно легко. Вы можете запустить процесс самостоятельно или подключить визуальную студию к существующему запущенному процессу и поставить точки останова.

Если код C ++ является встроенной DLL / LIB, вы можете использовать python в качестве процесса отладки / запуска. Как только python загрузит DLL / LIB в ваш код python, visual studio активирует ваши точки останова.

Кроме того, вы также можете добавлять вызовы запуска отладчика окон в свой код. Как только ваш код будет выполнен, вы увидите диалоговое окно с вопросом, хотите ли вы присоединить отладчик.

  • Ссылка на библиотеку в IronPython с помощью Visual Studio
  • Ошибка компиляции пин-инструмента с помощью python включает в себя получение ошибки C2872: 'UINT32': неоднозначный символ
  • Не удалось найти vcvarsall.bat с помощью Python 3.3 в Windows 8
  • Запуск .exe на Azure
  • Как настроить код Visual Studio для поиска интерпретатора Python 3 в Windows 10
  • Загрузка numpy в IronPython
  • Что это за #ifdef __GNUC__?
  • DLL-файл, загруженный дважды с перенаправлением DLL через манифест
  • Python - лучший язык программирования в мире.