今天使用cjson操作發現lua的nil操作並沒有刪除記憶體。
具體**如下:
rst_table["ws"][1] = nil
local cut_rsh_result = cjson.encode(rst_table)
print (cut_rsh_result)
我們隊其中某項賦值為nil
cjson轉換時並沒有刪除 而是顯示
[null,{}] 這樣的東西。
驗證陣列時也發現
local a =
a[1]=nil
print (a[1])
nil此時 a[1] 沒有變成 2
print(a[2])
由此可見nil只是將記憶體至 0 並沒有釋放。只有在物件結束生命週期 lua垃圾機制才會**。
小記一下!
Lua變數以及賦值,索引操作
變數型別 全域性變數,區域性變數,表中的域 lua 中的變數全是全域性變數,那怕是語句塊或是函式裡,除非用 local 顯式宣告為區域性變數。區域性變數的作用域為從宣告位置開始到所在語句塊結束。變數的預設值均為 nila 5 全域性變數 local b 6 區域性變數 function joke c...
lua中位運算操作
description filename bit.lua this module provides a selection of bitwise operations.history initial version created by 陣雨 2005 11 10.notes bit for i 1...
Lua中C API棧操作
向棧中壓入資料 lua pushnil lua state lua pushboolean lua state bool lua pushnumber lua state lua number lua pushinteger lua state lua integer lua pushlstring...