亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Lua和C++的通信流程分解

 更新時(shí)間:2014年09月12日 11:25:48   作者:笨木頭  
這篇文章主要介紹了Lua和C++的通信流程分解,本文用一張圖講解了Lua和C++之間的通信流程,并對每一步做了分解,需要的朋友可以參考下

網(wǎng)上關(guān)于Lua的教程似乎還沒有泛濫,最近剛好學(xué)習(xí)在Cocos2d-x使用Lua,當(dāng)然了,我是寫教程狂,我會分享我的學(xué)習(xí)心得的~
(旁白:我噗~!每次你寫東西我就要吐槽,你不累么= =)
 
這是第一課,先來讓Lua和C++認(rèn)識一下,順便讓它們逛街吃飯牽小手什么的…
(旁白:。。。吹,繼續(xù)吹)

1. Lua的堆棧和全局表

我們來簡單解釋一下Lua的堆棧和全局表,堆棧大家應(yīng)該會比較熟悉,它主要是用來讓C++和Lua通信的,是的,它們并不認(rèn)識對方,只能通過堆棧來溝通,就像寫信一樣。
(旁白:它們不會用微信嗎?!微信~!不知道?)
 
Lua的全局表又是什么呢?可以想象成是一個(gè)map哈希表結(jié)構(gòu),比如Lua有一個(gè)變量:

復(fù)制代碼 代碼如下:
name = “hello”

那么,全局表就存放了”name”和”hello”的對應(yīng)關(guān)系,Lua可以通過name在全局表中查找到hello。應(yīng)該是這樣的~
(旁白:應(yīng)該= =!)

2. Lua和C++的第一次通信

現(xiàn)在來設(shè)計(jì)一個(gè)場景,C++在一次JavaScript開發(fā)者大會上看到Lua在演講,于是C++被Lua深深吸引了。
(旁白:JavaScript大會…那為毛是Lua在演講~?。?br />  
我們來看看這位美麗的Lua小姐長什么樣:

復(fù)制代碼 代碼如下:
-- hello.lua 文件
myName = "beauty girl"

OK,一位簡單又美麗Lua小姐。
然后,C++想知道Lua叫什么名字,所以,它們必須要通信了。來看看通信流程:

請注意紅色數(shù)字,代表通信順序:
1) C++想獲取Lua的myName字符串的值,所以它把myName放到Lua堆棧(棧頂),以便Lua能看到
2) Lua從堆棧(棧頂)中獲取myName,此時(shí)棧頂再次變?yōu)榭?br /> 3) Lua拿著這個(gè)myName去Lua全局表查找myName對應(yīng)的字符串
4) 全局表返回一個(gè)字符串”beauty girl”
5) Lua把取得的“beauty girl”字符串放到堆棧(棧頂)
6) C++可以從Lua堆棧中取得“beauty girl”,也就是這位美麗的Lua小姐的名字了~
世界如此美妙,這是如此的簡單。
(旁白:好吧,這次不吐槽,確實(shí)簡單…)
 
不過,(旁白:我就知道~!我就知道事情沒有那么簡單!)這只是最簡單的情況,實(shí)際上各種C++和Lua的操作比這要復(fù)雜多了,但基本原理是一樣的。
好的,趁著旁白還沒有吐槽,我們要結(jié)束第一章了,希望能幫到大家。
(旁白:說得好像我好喜歡搶戲似的,我像這樣的人嗎?= = 等等~!例子呢?Demo呢?)
 
噢,Demo將在下一章介紹。
(旁白:吊胃口。。。絕對是在吊胃口…你以為我會期待嗎,魂淡…心好癢~?。?/p>

相關(guān)文章

  • Lua中table的一些輔助函數(shù)介紹

    Lua中table的一些輔助函數(shù)介紹

    這篇文章主要介紹了Lua中table的一些輔助函數(shù)介紹,這些函數(shù)組成了table的函數(shù)庫,需要的朋友可以參考下
    2014-09-09
  • Lua腳本語言概述

    Lua腳本語言概述

    這篇文章主要介紹了Lua腳本語言概述,本文講解了Lua是什么、Lua語言的特性、Lua的使用范圍、Lua的基本內(nèi)容、Lua虛擬機(jī)等內(nèi)容,需要的朋友可以參考下
    2014-09-09
  • Lua模塊與包學(xué)習(xí)筆記

    Lua模塊與包學(xué)習(xí)筆記

    這篇文章主要介紹了Lua模塊與包學(xué)習(xí)筆記,本文講解了加載模塊、加載機(jī)制等內(nèi)容,需要的朋友可以參考下
    2014-12-12
  • Lua教程(十四):字符串庫詳解

    Lua教程(十四):字符串庫詳解

    這篇文章主要介紹了Lua教程(十四):字符串庫詳解,本文講解了基礎(chǔ)字符串函數(shù)、模式匹配函數(shù)、模式、捕獲(capture):、替換等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • vs2012 error c4996: This function or variable may be unsafe

    vs2012 error c4996: This function or variable may be unsafe

    這篇文章主要介紹了vs2012 error c4996: This function or variable may be unsafe,需要的朋友可以參考下
    2015-04-04
  • Lua table的concat方法使用實(shí)例

    Lua table的concat方法使用實(shí)例

    這篇文章主要介紹了Lua table的concat方法使用實(shí)例,本文講解了concat方法的用法及使用實(shí)例,需要的朋友可以參考下
    2015-04-04
  • Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式

    Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式

    這篇文章主要介紹了Lua學(xué)習(xí)筆記之運(yùn)算符和表達(dá)式,本文在代碼中使用注釋對Lua的運(yùn)算符和表達(dá)式做了講解,需要的朋友可以參考下
    2014-09-09
  • 讓你的python代碼更加pythonic(簡練、明確、優(yōu)雅)

    讓你的python代碼更加pythonic(簡練、明確、優(yōu)雅)

    這篇文章主要介紹了讓你的python代碼更加pythonic(簡練、明確、優(yōu)雅),本文講解的是一種讓代碼更加清晰、簡練、明確、優(yōu)雅的書寫方法,需要的朋友可以參考下
    2014-10-10
  • 舉例詳解Lua中的協(xié)同程序編程

    舉例詳解Lua中的協(xié)同程序編程

    這篇文章主要介紹了Lua中的協(xié)同程序編程,是Lua入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-05-05
  • Lua中實(shí)現(xiàn)StringBuffer功能

    Lua中實(shí)現(xiàn)StringBuffer功能

    這篇文章主要介紹了Lua中實(shí)現(xiàn)StringBuffer功能,本文給出了實(shí)現(xiàn)代碼和調(diào)用代碼,需要的朋友可以參考下
    2014-11-11

最新評論