2017-11-04 3 views
0

나는 잠시 동안 나를 괴롭혔던 질문이 있습니다. 신참 질문 인 경우 미안합니다 :
둘 이상의 프로그래밍 언어로 응용 프로그램을 개발할 수있는 방법이 있습니까?프로그래밍 언어가 둘 이상인 응용 프로그램 개발

... 수 C로 작성, 오브젝티브 C, 루아와 파이썬, MPV는 다음과 같습니다
오늘은 리눅스에서 비디오 플레이어를 찾고 있었고, 난이 보았다

MPV 플레이어 누구나 여러 언어로 응용 프로그램을 작성하는 방법을 설명하는 사람이 있습니까?
도움을 주셔서 감사합니다 ...

답변

0

하나의 언어로 작성된 함수 (및 구현체)를 다른 함수 (및 구현체)로 작성된 함수에서 호출하면됩니다.

lua 스크립트 언어 (및 통역) C 응용 프로그램에 쉽게 퍼갈 수 있도록 설계되었다. 루아 매뉴얼의 The Application Program Interface 장을 읽으십시오 (루아는 인수와 결과를 위해서 약간의 스택을 사용합니다). 그리고 Guile도 쉽게 임베딩 할 수 있도록 설계되었으며 좋은 설명이 있습니다 (Guile 런타임에 외국 함수를 제공합니다). tutorial

경우에 따라 foreign function을 호출하기 위해 특정 규칙 (구현에 따라 다름)을 따라야합니다. 예를 들어, 파이썬에는 Extending and Embedding The Python Interpreter에 대한 장이 있습니다. C++ 코드 extern "C"로 C로 코딩 기능의 선언 (또는 C에서 호출을) 주석을 필요 OCaml의 설명서가 더 일반적으로 장에 대한 Interfacing C with Ocaml

을 가지고, calling conventionsABI의 인식. 경우에 따라 libffi을 사용하여 런타임에만 알려진 서명 함수를 호출 할 수 있습니다.

BTW, MPV은 오픈 소스이므로 source code을 공부하지 않으시겠습니까? 이 문서는 것

+0

가 대단히 감사합니다 내가 확장 및 포함 파이썬 인터프리터 링크 읽기 및이 아름답다고, 나는 당신이 이것을 할 수 몰랐다. Qt와 Python으로이 과정을 진행할 수 있습니까? –

+0

아니요, 문서를 읽고 실험해야합니다. 나는 그것에 시간을 할애하지 않을 것이다. –

+0

당신의 마지막 질문에 대한 대답은 쉽습니다 : 나는 미안하지만, 당신을 괴롭히는 것을 의미하지는 않는다. –