Существует две основные модели для объединения C++ и Python:
расширение, в котором конечный пользователь запускает исполняемый интерпретатор Python и импортирует модули Python & #8220; расширения & #8221; написанные на C++. Подумайте о том, чтобы взять библиотеку, написанную на C++, и дать ей интерфейс Python, чтобы ее могли использовать программисты Python. Эти модули выглядят как обычные модули Python.
встраивание, в котором конечный пользователь запускает программу, написанную на C++, которая в свою очередь вызывает интерпретатор Python в качестве подпрограммы библиотеки. Подумайте о добавлении сценариев к существующему приложению.
Ключевое различие между расширением и встраиванием заключается в расположении C++.<main()>функция: в исполняемом интерпретаторе Python или в какой-либо другой программе соответственно. Обратите внимание, что даже при встраивании Python в другую программумодули расширения часто являются лучшим способом сделать функциональность C/C++ доступной для кода Python, поэтому использование модулей расширения действительно лежит в основе обеих моделей.
За исключением редких случаев, модули расширения строятся как динамически загружаемые библиотеки с одной точкой входа, что означает, что вы можете изменить их, не перестраивая ни другие модули расширения, ни исполняемый файл, содержащий<main()>.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.