XLua官方API 03 型別對映

2021-10-09 21:35:47 字數 1401 閱讀 7648

基本資料型別c#

型別 lua型別

sbyte

,byte,short,ushort,int,uint,double,char,float

number

decimal

userdata

long

,ulong

userdata/lua_integer(lua53)

bytes

string

bool

boolean

string

string

複雜資料型別複雜資料類

c#型別

lua型別

luatable

table

luafunction

function

class

或者 struct的例項

userdata

,table

method

,delegate

function

luatable

c#側指明從lua側輸入(包括c#方法的輸入引數或者lua方法的返回值)luatable型別,則要求lua側為table。或者lua側的table,在c#側未指明型別的情況下轉換成luatable。

luafunction

c#側指明從lua側輸入(包括c#方法的輸入引數或者lua方法的返回值)luafunction型別,則要求lua側為function。或者lua側的function,在c#側未指明型別的情況下轉換成luafunction。

luauserdata

對應非c# managered物件的lua userdata。

class或者 struct的例項:

從c#傳乙個class或者struct的例項,將對映到lua的userdata,並通過__index訪問該userdata的成員 c#

側指明從lua側輸入指定型別物件,lua側為該型別例項的userdata可以直接使用;如果該指明型別有預設建構函式,lua側是table則會自動轉換,轉換規則是:呼叫建構函式構造例項,並用table對應字段轉換到c#對應值後賦值各成員。

method, delegate:

成員方法以及delegate都是對應lua側的函式。 c#

側的普通引數以及引用引數,對應lua側函式引數;c#側的返回值對應於lua的第乙個返回值;引用引數和out引數則按序對應於lua的第2到第n個引數。

XLua官方教程 02 C 訪問Lua

這裡指的是c 主動發起對lua資料結構的訪問。本章涉及到的例子都可以在xlua tutorial csharpcalllua下找到。一 獲取乙個全域性基本資料型別 訪問luaenv.global就可以了,上面有個模版get方法,可指定返回的型別。luaenv.global.get int a lua...

SpringdataJpa的官方API學習

將對springdata jpa的api 第三章之後進行解釋 1.springdata中的中心介面是 repository。這個介面沒有什麼重要的功能 原句稱沒什麼驚喜的乙個介面 主要的作用就是標記和管理。其他的介面都是此介面的子類。example 1 1 public inte ce crudre...

Bada開發 API官方學習2 風格

三星bada是乙個新的手機平台,它允許開發者開發豐富的應用程式用來提公升使用者在移動空間中的體驗。本文介紹了三星bada平台open api的基本風格,以及在開發過程中可能會遇到的問題和處理方法。1 二次構造 在c 中當在物件初始化時分配資源失敗,那麼物件知識部分初始化並且析構函式並沒有被呼叫,這樣...