[lua] require 的奇怪事

2025-08-11  本文已影响0人  吃豆腐不吐豆腐皮

基础信息

-- ./lib/script.lua
local tbl = {}
return tbl

开始实验

-- ./test_require.lua
package.path = package.path ..";./lib/?.lua"
print("第一次", require "script", require "lib.script")
print("第二次", require "script", require "lib.script")

按理说,上面打印的table是一样的, 但实际上不一样

第一次  table: 0x55645973e750   table: 0x55645973e8c0   ./lib/script.lua
第二次  table: 0x55645973e750   table: 0x55645973e8c0

结论

通过 require 不同的路径会产生不同的实例

上一篇 下一篇

猜你喜欢

热点阅读