swig

    4熱度

    2回答

    我有一個包裹着swig的類,並且註冊了lua。我可以在lua腳本中創建這個類的一個實例,並且它一切正常。 但是說我有一個在我的C++代碼中創建的類的實例,調用了新的X,並且我有la lua_state L,它帶有一個我想要調用的函數,它接受一個參數, X ...我如何調用該功能。這是有問題(我省略了錯誤處理的東西)的代碼(部分): 的main.cpp class GuiInst; extern

    5熱度

    2回答

    是否有任何其他的方式來調試痛飲擴展,除了做 gdb python stuff.py ? 我已經包裝了傳統庫libkdtree++並遵循了所有與swig有關的內存管理點(借用ref與自己的參考等)。但是,我仍然不確定我的約束是不是在消耗記憶。能夠逐步調試每個公開函數將會很有幫助:從Python開始,然後通過C glue綁定到C空間並返回。 有沒有這種可能性?

    3熱度

    2回答

    我想從C庫中創建一個Perl哈希。下面是我到目前爲止有: static void add_string_to_perl_hash (HV *hv, char * key, char *value) { SV *obj = sv_2mortal(newSVpv(value, 0)); hv_store(hv, (const char *)key, strlen (key), obj, 0);

    6熱度

    3回答

    我已經嘗試了一百件事,我無法讓我的.so文件與使用swig的php接口。我可以生成這些文件,然後我必須編譯Zend並將其鏈接到.so,但它現在會在加載時保持seg錯誤。 有人可以請我走,但如何使用swig爲C++庫生成PHP接口? swig網站上的documentation沒有幫助。

    3熱度

    3回答

    我正在使用大量類(150+)的C++項目,每個類都有10到300個字段左右的區域。我真的很想爲測試目的提供一個腳本接口,這樣我就可以編寫不需要重新編譯的回調代碼。我想在Lua中這樣做,因爲我比C++更熟悉C API,但如果它能夠節省頭痛,我很樂意在Python中完成這項工作。 我已經牢牢掌握瞭如何從我的C++調用Lua函數,反之亦然,並且我知道如何來回傳遞基本數據類型。我的問題是如何使用SWIG在

    7熱度

    2回答

    我有一個C接口,看起來像這樣(簡化): extern bool Operation(void ** ppData); extern float GetFieldValue(void* pData); extern void Cleanup(p); 其被用作如下: void * p = NULL; float theAnswer = 0.0f; if (Operation(&p)) {

    1熱度

    1回答

    我注意到,在給定的一組類的SWIG包裝中,SWIG保留了所有父類的C字符串表示該類繼承的。 (char ** base_names)。我知道有一個功能 swig_type(some_variable) 這將返回給定變量的數據類型的字符串表示形式。是否還有一個函數會返回一個父類的表作爲字符串?如果不是,有沒有簡單的方法來寫這個函數?我完全不瞭解SWIG的內部運作。 謝謝!

    4熱度

    3回答

    我正在使用swig從Python庫中用Python包裝類。它總體上工作,但有一個例外是從庫內引發的,我似乎無法在swig界面中捕獲它,所以它只是崩潰了python應用程序! PyMonitor.cc類描述了Swig接口到所需的類Monitor。 如果監視器的構造函數無法連接,則會引發異常。我想,以處理PyMonitor此異常,如: PyMonitor.cc: #include "Monitor.h

    0熱度

    1回答

    我正在嘗試爲C++類的集合構建一組Lua綁定,但一直在玩弄Python以查看是否會獲得更好的結果。在任何一種語言中,綁定似乎都可以工作,但是,當我初始化一個包含其他類成員的類的實例時,這些數據成員似乎不能保證被初始化。 例如,走班: class MyClass : public ParentClass // (Obviously) not a real class { public:

    4熱度

    1回答

    目前我有一套SWIG包裝器供我的課程使用,並且全部都構建完成。我可以創建一個lua虛擬機並加載我的包裝,但是在那個時候,我被淘汰了。谷歌搜索告訴我如何推動在盧阿把C++放在swig,但不是如何把lua放在C++中。 真的所有我想要做的是管理實例化一個Lua對象,並通過它我的主要遊戲引擎對象的指針,從那裏我可以管理