Lua中如何实现函数或变量的自我引用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计340个文字,预计阅读时间需要2分钟。
在您的程序中,要获取变量的值,您可以使用访问器方法(getter)来获取私有变量的值。以下是一个简化的示例,展示了如何在Java和VB中实现这一功能:
Java示例:javapublic class MyClass { private int a;
public void setA(int a) { this.a=a; }
public int getA() { return this.a; }}
VB示例:vbPublic Class MyClass Private a As Integer
Public Sub SetA(ByVal a As Integer) Me.a=a End Sub
Public Function GetA() As Integer Return Me.a End FunctionEnd Class
在这两个示例中,`setA` 方法用于设置私有变量 `a` 的值,而 `getA` 方法用于获取 `a` 的值。这样,您就可以在类的外部安全地访问和修改私有变量了。
你是如何在自己的程序中获得变量的?就像在Java中一样,你有:
private int a public void sa(int a) { this.a = a} public void ga() { return this.a }
VB有’我’而C#有’这个’等.
但Lua相当于什么呢?这是正确的方向吗?
local a function sa(a) self.a = a end 你有点说它,但OOP方法有点不同.以下是实际的方法.
local t = { a } t.__index = t function t:sa(x) self.a = x end
然后,调用函数:
t:sa(21)
要么
t.sa( t, "some string this time?" )
本文共计340个文字,预计阅读时间需要2分钟。
在您的程序中,要获取变量的值,您可以使用访问器方法(getter)来获取私有变量的值。以下是一个简化的示例,展示了如何在Java和VB中实现这一功能:
Java示例:javapublic class MyClass { private int a;
public void setA(int a) { this.a=a; }
public int getA() { return this.a; }}
VB示例:vbPublic Class MyClass Private a As Integer
Public Sub SetA(ByVal a As Integer) Me.a=a End Sub
Public Function GetA() As Integer Return Me.a End FunctionEnd Class
在这两个示例中,`setA` 方法用于设置私有变量 `a` 的值,而 `getA` 方法用于获取 `a` 的值。这样,您就可以在类的外部安全地访问和修改私有变量了。
你是如何在自己的程序中获得变量的?就像在Java中一样,你有:
private int a public void sa(int a) { this.a = a} public void ga() { return this.a }
VB有’我’而C#有’这个’等.
但Lua相当于什么呢?这是正确的方向吗?
local a function sa(a) self.a = a end 你有点说它,但OOP方法有点不同.以下是实际的方法.
local t = { a } t.__index = t function t:sa(x) self.a = x end
然后,调用函数:
t:sa(21)
要么
t.sa( t, "some string this time?" )

