Lua类对象和类对象的单例
1、Lua的类对象
local myClass = {} function myClass:new() local self = {} setmetatable(self,{__index = myClass}) end local a = 0 local b = 0 local c = 0 return myClass
以上类的对象实例化的调用:
require "myClass"
local _myClass = myClass:new()
实例化后 _myClass.a、_myClass.b、_myClass.c的初始值均为nil
2、Lua的单例
lua的单例的本质其实就是一个全局的字段
myInstanceClass = {} myInstanceClass_mt = {__index = myInstanceClass} function myInstanceClass:new() local self = {} setmetatable(self,myInstanceClass_mt) end local a = 0 local b = 0 local c = 0 return myInstanceClass --在使用全局字段的单例中,这句返回值其实可有可无,因为是全局的,所以不需要返回值也能调用。
以上类的对象的调用:
require "myInstanceClass"
local _myInstanceClass1 = myInstanceClass:new()
local _myInstanceClass2 = myInstanceClass:new()
local _myInstanceClass3 = myInstanceClass:new()
实例化后 _myInstanceClass.a、_myInstanceClass.b、_myInstanceClass.c的初始值均为nil
任何时时候以下三个对象之一的值变化的时候_myInstanceClass1 、_myInstanceClass2 、_myInstanceClass3,另外两个对象的值也同时会变化。
小时候我把老婆种到地下,长大了我能收获一大堆老婆!
我是威少,我是一名Unity游戏的主程,我为自己带盐,希望此文能给您一点点微不足道的帮助,祝你成功!