Tag: c ++

Помогает ли time.sleep процессору?

Недавно я занимался серфингом в Stack Overflow (Python) и увидел этот пост, где Аарон Холл утверждает, что постоянно работает, а петли могут потреблять много вычислительной мощности. Добавление периода ожидания (даже в течение секунды) может значительно уменьшить это использование. Это правда? И если да, то как? То же правило применяется к другим языкам программирования (например, C […]

Как передать объект C ++ другому объекту C ++ с помощью Boost.Python

У меня есть код C ++, который определяет два класса: A и B. B берет экземпляр A во время построения. Я завернул A с Boost.Python, чтобы Python мог создавать экземпляры A, а также подклассы. Я хочу сделать то же самое с B. class A { public: A(long n, long x, long y) : _n(n), _x(x), […]

SWIG, повысить общие указатели и наследование

У меня проблемы с SWIG, общие указатели и наследование. Я создаю различные классы c ++, которые наследуют друг от друга, используя общие указатели Boost для ссылки на них, а затем обертывают эти общие указатели SWIG для создания классов python. Моя проблема заключается в следующем: B является подклассом A sA является общим указателем на A sB […]

Как создать приложение, которое внедряет и запускает код Python без локальной установки Python?

Привет, коллеги-разработчики программного обеспечения. Я хочу распространять C-программу, которая может быть написана сценарием, встраивая интерпретатор Python. Программа C использует Py_Initialize, PyImport_Import и т. Д., Чтобы выполнить вложение Python. Я ищу решение, в котором я распространяю только следующие компоненты: исполняемый файл программы и ее библиотеки библиотека Python (dll / so) ZIP-файл, содержащий все необходимые модули и […]

Проверка точности типа ctypes в Python

Если API ожидает 64-разрядный тип, как я могу проверить, что тип ctypes имеет столько битов, если sizeof возвращает количество байтов? Как узнать, сколько бит в каждом байте на текущей платформе? Где CHAR_BIT определен в Python?

Найти все ссылки на объявление определенной функции в libclang (Python)

Я пытаюсь найти (позиция строки и столбца) все ссылки конкретного объявления функции при анализе исходного файла C ++ через libclang в Python. Например: #include <iostream> using namespace std; int addition (int a, int b) { int r; r=a+b; return r; } int main () { int z, q; z = addition (5,3); q = addition […]

Вызов кода Python из потока C

Я очень смущен тем, как точно я могу обеспечить безопасность потоков при вызове кода Python из потока C (или C ++). Документация Python, похоже, говорит, что обычная идиома для этого: PyGILState_STATE gstate; gstate = PyGILState_Ensure(); /* Perform Python actions here. */ result = CallSomeFunction(); /* evaluate result or handle exception */ /* Release the thread. […]

Передать список python на c ++-расширение с помощью boost python

Я пытаюсь написать расширение c ++, чтобы заменить следующую функцию python, чтобы ускорить мою программу Функция python выглядит следующим образом: def calc_dist(fea1, fea2): #fea1 and fea2 are two lists with same length … Я написал функцию с помощью c ++ и boost python, как показано ниже: #include <vector> #include <boost/python.hpp> double calc_dist(vector<double>& fea1, vector<double>& fea2) […]

Используйте Boost-Python для вычисления производной функции, определенной в python

Я хочу написать программу Boost-Python, чтобы использовать символическую функцию python у пользователя и оценить ее производную в моей программе. Например, Пользователь предоставляет файл python (Function.py), который определяет такую ​​функцию, как F = sin (x) * cos (x). Затем я хочу иметь доступ к F '(x) (производная от F (x)), используя символическую дифференцирующую способность Sympy. Я […]

Как получить ссылки и указатели в Python + SWIG?

У меня есть функция C ++, в которой два аргумента приведены в следующем примере. void func(int& n, char** data) { *data = other_func1(); // returns a char array n = other_func2(); // returns the length of the array } Я могу легко использовать эту функцию в C или C ++, но я не знаю, как […]

Python - лучший язык программирования в мире.