C++ 是否可以使用另一个lua文件中定义的表,该文件在当前文件中不需要作为模块?

C++ 是否可以使用另一个lua文件中定义的表,该文件在当前文件中不需要作为模块?,c++,lua,C++,Lua,下面的代码摘自一个lua文件,比如file0.lua local Tags = require('file1') local Set = require('file2') local Guidance = {} highway_classes = { motorway = road_priority_class.motorway, motorway_link = road_priority_class.motorway_link, trunk = road_priority_cl

下面的代码摘自一个lua文件,比如file0.lua

local Tags = require('file1')
local Set = require('file2')

local Guidance = {}

highway_classes = {
  motorway = road_priority_class.motorway,
  motorway_link = road_priority_class.motorway_link,
  trunk = road_priority_class.trunk,
  trunk_link = road_priority_class.trunk_link,
  primary = road_priority_class.primary,
  primary_link = road_priority_class.primary_link,
  secondary = road_priority_class.secondary,
  secondary_link = road_priority_class.secondary_link,
  tertiary = road_priority_class.tertiary
}

我已经搜索了两个必需的文件,即file1和file2。我在任何地方都没有发现任何关于road_priority_课程的提及。我确实在另一个lua文件中找到了它,比如file3.lua。但是file0.lua中根本不需要这个file3.lua。我在想,你知道在什么情况下这是可能的吗?我是Lua的新手,我正在开发的代码嵌入C++环境中,我想这就是原因。如有任何意见,我们将不胜感激

如果
road\u priority\u class
是一个全局变量,则从声明该变量的那一刻起,它就可以在任何地方使用(即,文件在任何地方都是必需的)


您通常不应该这样做的主要原因正是因为这样做很难跟踪事物的来源并打破模块化。

如果
road\u priority\u class
是一个全局变量,那么从声明它的那一刻起,它就在任何地方可用(即,文件在任何地方都是必需的)


通常不应该这样做的主要原因正是因为这样很难跟踪事物的来源并破坏模块性。

如果Lua解释器嵌入到另一个程序中,该程序可以添加可以在Lua脚本中使用的变量。该程序还可以运行其他脚本作为一个脚本。如果Lua解释器嵌入到另一个程序中,该程序可以添加可以在Lua脚本中使用的变量。该程序还可以运行其他脚本作为一个脚本。