簡體   English   中英

在函數定義之后將返回對象分配給函數名稱的目的

[英]Purpose of assigning the return object to the function name after the function definition

我發現swig為C ++函數生成的Python包裝器包含以下幾行:

def my_func(arg):
    return _cpp_mod.my_cpp_func(arg)
my_func = _cpp_mod.my_cpp_func

.i文件中的源代碼如下:

%module cpp_mod
... ...
%inline %{
MyObj& my_cpp_func(arg) {
    return *new MyObj(arg);
}
%}

生成的代碼的所有功能似乎都正常。
我想知道的是第三行的目的
生成的python代碼。 提前致謝。

這正是SWIG決定包裝功能的方式。 第一部分

def my_func(arg):
  return _cpp_mod.my_cpp_func(arg)

顯示輸入參數的數量,如果生成了注釋,則將它們插入此處。

第二部分

my_func = _cpp_mod.my_cpp_func

正在將函數重新定義為生成的庫函數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM