Python에서 C++ 클래스를 어떻게 사용할 수 있나요?
문제
C++로 클래스를 구현했습니다.Python과 함께 사용하고 싶습니다.단계별 방법을 제안하고 각 단계를 자세히 설명해주세요.이런 것...
class Test{
private:
int n;
public:
Test(int k){
n=k;
}
void setInt(int k){
n = k;
}
int getInt(){
return n;
}
};
이제 파이썬에서
>>> T1 = Test(12)
>>> T1.getInt()
12
>>> T1.setInt(32)
>>> T1.getInt()
32
제안해주세요. 어떻게 해야 하나요?메모:수동으로 하는 방법을 알고 싶습니다.나는 타사 라이브러리 종속성을 원하지 않습니다.
다른 팁
ctypes 좋다. 사용하기가 정말 쉽고 파이썬과 함께 표준이 있습니다. 불행히도 C 스타일 인터페이스가있는 공유 라이브러리 (UNIX) 또는 DLLS (Windows) 와만 대화 할 수 있습니다. 즉, C ++ 객체와 직접 인터페이스 할 수 없습니다. 그러나 핸들이 특정 객체를 지칭하는 핸들 시스템을 사용할 수 있습니다.
>>> getInt(h)
12
나는 그것이 간단하고 이해하기 쉽고 추가 라이브러리가 필요하지 않다고 생각합니다.
SWIG 또는 SIP (KDE/PYQT)를 사용해보십시오.
SWIG 링크 : http://www.swig.org/
SIP 링크 : http://freshmeat.net/projects/python-sip/
이들은 C ++ 클래스를 마무리하고 Pythonic 인터페이스를 제공하는 데 사용될 수 있습니다.
제휴하지 않습니다 StackOverflow