Cocos2D-X面試題

一、隊(duì)列和棧有什么區(qū)別?

隊(duì)列(Queue):是限定只能在表的一端進(jìn)行插入和在另一端進(jìn)行刪除操作的線性表;
棧(Stack):是限定只能在表的一端進(jìn)行插入和刪除操作的線性表。
區(qū)別如下:
a)規(guī)則不同
1. 隊(duì)列:先進(jìn)先出(First In First Out)FIFO
2. 棧:先進(jìn)后出(First In Last Out )FILO

b)對插入和刪除操作的限定不同
1. 隊(duì)列:只能在表的一端進(jìn)行插入,并在表的另一端進(jìn)行刪除;
2. 棧:只能在表的一端插入和刪除。

c)遍歷數(shù)據(jù)速度不同
1. 隊(duì)列:基于地址指針進(jìn)行遍歷,而且可以從頭部或者尾部進(jìn)行遍歷,但不能同時(shí)遍歷,
無需開辟空間,因?yàn)樵诒闅v的過程中不影響數(shù)據(jù)結(jié)構(gòu),所以遍歷速度要快;
2. 棧:只能從頂部取數(shù)據(jù),也就是說最先進(jìn)入棧底的,需要遍歷整個(gè)棧才能取出來,而且
在遍歷數(shù)據(jù)的同時(shí)需要為數(shù)據(jù)開辟臨時(shí)空間,保持?jǐn)?shù)據(jù)在遍歷前的一致性。

二、你常用的cocos2d-x工具有哪些?

TiledMap (地圖編輯器)ParticleEditor(粒子編輯器)
cocosBuilder(可視化編輯)Texture Packer(圖片組合工具) 
plistEditor工具等

三、分別寫出int、float、BOOL、指針類型的變量,與“零”值的比較語句。

BOOL :  if ( !a ) or if(a)  
int :   if ( a == 0)  
float : const EXPRESSION EXP = 0.000001  
  <span style="white-space:pre">  </span>if ( a < EXP&& a >-EXP)  
pointer : if ( a != NULL) or if(a == NULL)  

不可將浮點(diǎn)變量用“==”或“!=”與數(shù)字比較,應(yīng)該設(shè)法轉(zhuǎn)化成“>=”或“<=”此類形式。

EPSINON(精度)應(yīng)該是一個(gè)很小的值吧 因?yàn)橛?jì)算機(jī)在處理浮點(diǎn)數(shù)的時(shí)候是有誤差的,所以判斷兩個(gè)浮點(diǎn)數(shù)是不是相同,是要判斷是不是落在同一個(gè)區(qū)間的,這個(gè)區(qū)間就是 [-EPSINON,EPSINON] EPSINON一般很小,10的-6次方以下吧,具體的好像不確定的,和機(jī)器有關(guān)。

剖析:

考查對0值判斷的“內(nèi)功”,BOOL型變量的0判斷完全可以寫成if(var==0),而int型變量也可以寫成if(!var),指針變量的判斷也可以寫成if(!var),上述寫法雖然程序都能正確運(yùn)行,但是未能清晰地表達(dá)程序的意思。
 一般的,如果想讓if判斷一個(gè)變量的“真”、“假”,應(yīng)直接使用if(var)、if(!var),表明其為“邏輯”判斷;如果用if判斷一個(gè)數(shù)值型變量(short、int、long等),應(yīng)該用if(var==0),表明是與0進(jìn)行“數(shù)值”上的比較;而判斷指針則適宜用if(var==NULL),這是一種很好的編程習(xí)慣。

注意:

浮點(diǎn)型變量并不精確,所以不可將float變量用“==”或“!=”與數(shù)字比較,應(yīng)該設(shè)法成“>=”或“<=”形式。如果寫成if(x == 0.0),則判為錯(cuò),得0分。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 史上最全的iOS面試題及答案 迷途的羔羊--專為路癡量身打造的品牌。史上最精準(zhǔn)的定位。想迷路都難!閃電更新中......
    南虞閱讀 1,647評論 0 8
  • 多線程、特別是NSOperation 和 GCD 的內(nèi)部原理。運(yùn)行時(shí)機(jī)制的原理和運(yùn)用場景。SDWebImage的原...
    LZM輪回閱讀 2,132評論 0 12
  • ———————————————回答好下面的足夠了---------------------------------...
    恒愛DE問候閱讀 1,846評論 0 4
  • iOS面試小貼士 ———————————————回答好下面的足夠了------------------------...
    不言不愛閱讀 2,255評論 0 7
  • 史上最全的iOS面試題及答案 iOS面試小貼士———————————————回答好下面的足夠了----------...
    Style_偉閱讀 2,580評論 0 35

友情鏈接更多精彩內(nèi)容