在我的Lua脚本中,我正在尝试使用可变数量的参数创建一个函数.据我所知它应该像下面这样工作,但不知怎的,我在TI-NSpire上得到了Lua 5.1的错误(全局arg是零).我究竟做错了什么?谢谢!
function equation:init(...)
self.equation = arg[1]
self.answers = {}
self.pipe = {arg[1]}
self.selected = 1
-- Loop arguments to add answers.
for i = 2, #arg do
table.insert(self.answers, arg[i])
end
end
instance = equation({"x^2+8=12", -4, 4})
Run Code Online (Sandbox Code Playgroud) 我的课程中有4个属性的结构"边距".我没有写出四种不同的getter/setter方法,而是认为我可以用更好的方式做到:
class myClass {
private:
struct margin {
int bottom;
int left;
int right;
int top;
}
public:
struct getMargin();
void setMargin(string which, int value);
};
Run Code Online (Sandbox Code Playgroud)
但是如何在函数中设置与字符串"which"对应的struct的属性setMargin()?例如,如果我打电话myClass::setMargin("left", 3),我怎么能将"margin.left"设置为"3"?最好在保持结构POD的同时?我真的无法弄清楚这一点......
从旁注来看,这真的比编写许多getter/setter方法更好吗?
谢谢!
我在Internet Explorer 8中遇到jQuery附加问题(我没有检查早期版本).在启动时(在ready()函数中)我将a附加div到我的容器中div.这在IE8中不起作用,没有添加div.我通过在控制台中返回$('div#options')的长度来检查这个.为什么这不起作用?
这是我附加div的代码:
$('div#container').append('<div id="options"><a href="#" id="delete"><a href="#content" id="edit"></div>');
Run Code Online (Sandbox Code Playgroud)
我也尝试使用prepend()和appendTo(),但他们也没有工作......任何人都可以帮助我吗?
谢谢!
我正在创建一个应该在TI-Nspire计算器上运行的lua脚本.问题是,在运行我的脚本时,我在调用方法Attempt to index local 'self' (a nil value)时遇到错误button:activate().解析器说错误在下面的代码中的第8行.有问题的代码如下:
button = class(view)
function button:init()
self.selected = false
end
function button:activate()
self.selected = true
end
Run Code Online (Sandbox Code Playgroud)
我像这样调用activate函数:
item = button()
local action = "activate"
local arguments = {}
item[action](unpack(arguments))
Run Code Online (Sandbox Code Playgroud)
我知道这个class()函数在"stock"Lua中不存在,它是TI-Nspire Lua实现中可用的函数.您可以在此处找到其定义和用法.