Re: [心得] 結合Python 與 C(C++) 的優點
※ 引述《KSJ (阿真)》之銘言:
: PS.我對reference count怎麼解釋 跟它在Python、C之間有什麼關係
: 目前還是一頭霧水...有人有推薦什麼好的網站嗎??
: 官網有看過 不過感覺還不夠基本...
簡單來說 (官網文件翻譯+簡化的意味)
如果你的函式是用來生一個新東西傳回去給 Python 用,
那在傳回去之前要幫它 Py_INCREF().
如果呼叫的函式在手冊裡寫 Return value: New reference 的話,
就可以直接傳回去給 Python code 用;
如果只在 C 裡面用, 沒有傳回去的話, 用完記得 Py_DECREF().
如果呼叫的函式在手冊裡寫 Return value: Borrowed reference 的話,
要傳回去給 Python 用, 或者是自己暫存下來之前, 就要先呼叫 Py_INCREF()
(這就是 Reference counting 裡面 Thin Ice 那段舉的例子)
自己暫存下來的東西用完之後, 理所當然要呼叫 Py_DECREF() 才能扔掉
就這三點而已, 應該不會很複雜吧 ... XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.120.15.14
推
04/14 17:06, , 1F
04/14 17:06, 1F
推
04/14 22:26, , 2F
04/14 22:26, 2F
推
04/15 22:28, , 3F
04/15 22:28, 3F
推
04/15 23:15, , 4F
04/15 23:15, 4F
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章