第一個完整的程序。著名的俄羅斯方塊

    用了一天的時間,寫了一個俄羅斯方塊的手機遊戲。
    基礎遊戲框架是用C寫的,或者說是在微軟的.net環境下寫的。然後附加到iPhone(XCode環境)下運行調試。
    界面部分則是在XCode裏寫的。

    說起來,.net的C/C++的.cpp或c文件,總是要帶個"stdafx.h",否則就編譯報錯,解決方案是帶個stdafx.h,然後在iPhone的工程裏額外加個"stdafx.h",不過就不是原來的h文件了,裏面就簡單的包含了幾個.h,比如stdlib.h。
    (另:如果.net裏指定生成空的靜態庫,就可以不指定stdafx.h)

    一直以爲objective c只支持c文件,所以改名爲.c文件加到工程裏,然後很意外的發現也支持一些c++,比如bool好象在c裏是沒有的。所以在xcode裏編譯報錯,換成.cpp後就編譯通過了。至於class是否支持,就沒試了。
    不過還沒完,既然是c函數,肯定要加個聲明瞭,比如
      extern void RunInit(int Rng);
    結果很沮喪的發現編譯過了,鏈接時卻提示找不到該函數,折騰了好一陣,試着把.cpp文件改名爲.m文件,鏈接通過,正常運行,真是抓狂。

    現在回到XCode。先抱怨下鍵盤操作。
    標準鍵盤裏是有home,end,delete的,這三個我用得相當多。原先只是照着書輸下示例代碼,也還可以忍受。現在頻繁的改代碼,真是有點喫不消。嘗試了一下,發現mac環境有自己的解決方案。標準鍵盤的"win"對應於mac鍵盤裏的一個四方花紋鍵。不過用得比win頻繁的多,用這個鍵加上右移鍵相當於end,加上shift,就相當於shift+end,選中到結尾。
    然後是delete鍵,這個在mac裏其實是回刪鍵,mac下估計是某個組合相當於delete,不過沒找到,就算找到了估計也不想用,所以每次要按delete都是按下右移,再回刪,或乾脆用鼠標選中按回刪,這就嚴重影響速度了。。整得剛回到win裏都忘了有deletes可按了。


    然後是選擇一段代碼,拖到某處,mac很華麗的把整段文字一起拖動,害得我找目標好頭大。這是何苦來啊,還是win的顯示一個小小矩形好。
    mac的鍵盤按起來還是挺舒服,對比我的xp筆記本。不過比起臺式機還是差了好多。試着外接了一個鍵盤,不過上面的home,delete,還是不能用。
    所謂入鄉隨俗,只是現在頻繁的在mac/win切換,不知入的了不。。

    剛用XCode,好幾次畫完視圖,運行,很傻眼的發現啥的沒有,最後發現是要先保存,界面也就算了,代碼有時也這樣。現在基本是本能的按保存鍵。
    輸代碼,XCode默認是不彈出提示代碼列表的(不知道可不可以配置成彈示),每次都用從菜單裏找,快捷鍵是有,不過不認識,怎麼看都象是電源鍵加某鍵,這誰敢按啊。
    XCode裏的代碼提示其實挺強大的,比如輸入UIL,後面就跟了able,按Tab就把able放上去了。尤其是標準C函數,.net是不提示的,比如輸::p,會看到::printf,不過如果只輸prin,是沒反應的。。而XCode雖然沒有代碼列表,不過在prin後會有所反應。可能和.net重點不在c有關吧。

    然後是發佈程序,看起來,,不成爲付費開發人員是別想發佈,測試都不行。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章