(我重新措辭的問題用一個例子,所以它也許更清楚我想要什麼)我可以在SWIG翻譯方法時推導出一些C++參數嗎?
說我有一個C++函數:
void foobar(int arg0, int arg1);
我想痛飲翻譯成Python 。但是,在Python中,我只想使用參數arg1
,並且計算arg0
是相同的。換句話說,我想讓它這樣Python
>>>foobar(x)
相當於C++
foobar(x, x);
任何整數x。怎麼樣?
亞歷克斯的答案是指向某個方向,但還不夠遠。特別是
%typemap(in, numinputs=0) int arg0 {
}
是非常有用的,它允許我傳遞1個參數,Python不會抱怨。好。但是,剩下的部分是,如何從arg1
在一個typemap中計算arg0
?
是的,我剛剛嘗試你的第一個答案,沒有工作,讓我試一下你的編輯後,謝謝 –
是的,我錯過了'typemap(in)'。對於參考你看到https://sourceforge.net/p/cmusphinx/code/HEAD/tree/trunk/sphinxbase/swig/typemaps.i我用上面的把戲把C風格的錯誤代碼變成例外。 –