Почему запуск функции из C++ с использованием ctypes приводит к ошибке в Python ⇐ C++
-
Anonymous
Почему запуск функции из C++ с использованием ctypes приводит к ошибке в Python
У меня ошибка с ctypes и C++. Когда я пытаюсь запустить функцию из Weighty_functions.cpp, у меня возникает ошибка:
Файл «/home/user/PycharmProjects/Snake/main.py», строка 6, в print(weighty_functions.random_number_Exception_values(720, l)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/usr/lib/python3.11/ctypes/__init__.py", строка 389, в __getattr__ func = self.__getitem__(имя) ^^^^^^^^^^^^^^^^^^^^^^ Файл «/usr/lib/python3.11/ctypes/__init__.py», строка 394, в __getitem__ func = self._FuncPtr((name_or_ordinal, self)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: ./lib.so: неопределенный символ: случайное_число_исключение_значений Как изменить main.py или Weighty_functions.cpp, чтобы решить эту проблему?
weighty_functions.cpp
#include #include #include использование пространства имен std; int random_number_Exception_values (int to, вектор кроме_значений) { вектор all_variants; int результат; for (int i = 0; i
У меня ошибка с ctypes и C++. Когда я пытаюсь запустить функцию из Weighty_functions.cpp, у меня возникает ошибка:
Файл «/home/user/PycharmProjects/Snake/main.py», строка 6, в print(weighty_functions.random_number_Exception_values(720, l)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/usr/lib/python3.11/ctypes/__init__.py", строка 389, в __getattr__ func = self.__getitem__(имя) ^^^^^^^^^^^^^^^^^^^^^^ Файл «/usr/lib/python3.11/ctypes/__init__.py», строка 394, в __getitem__ func = self._FuncPtr((name_or_ordinal, self)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: ./lib.so: неопределенный символ: случайное_число_исключение_значений Как изменить main.py или Weighty_functions.cpp, чтобы решить эту проблему?
weighty_functions.cpp
#include #include #include использование пространства имен std; int random_number_Exception_values (int to, вектор кроме_значений) { вектор all_variants; int результат; for (int i = 0; i
Мобильная версия