나는 소스 C++로 몇 가지 기능을 가지고는 다음과 같이 선언 :(리눅스)
extern "C" {
int32_t comp_ip_long(const std::vector<EachColumn>& in, std::vector<EachColumn>& out);
}
는 C++ 코드는 xxx.so (리눅스 공유 객체)로 컴파일 내가 전화를 걸됩니다
파이썬에서의 함수. 내가 C++ 코드를 수정할 수 없다는 것을 알아두면, boost::python
같은 것을 액세스 할 수 없다.
나는 ctypes.CDLL을 시도했지만 xxx.so에 복잡한 인수를 전달하는 방법을 모른다.
PS :
I 일부 기능을 가진 .so는 준 (상기 파라미터 타입이 있지만, 기능을 모르는)의 함수 이름 및 파라미터들은 사용자에 의해 입력된다.
C++ 코드를 추가해야합니다. 사실 함수 이름은 다른 사람들에 의해 제공되며 나는 전혀 모른다. – richselian