您好,登錄后才能下訂單哦!
在本章中,你將會學到:
集成c/c++代碼到iPhone應用中的優缺點
c編程的基本概念
1)數據類型
2)指針
3)內存管理
c++編程的基本概念
1)類
2)內存管理
3)繼承
4)模板
如何在一個實際的例子中使用SQLite(一個基于C語言API的數據庫)
如何集成c++和Object-c++到你的iPhone應用中
在本章,你會學習到底層的c/c++編程,這對于高性能應用是非常重要的。事實上Objective-C是C語言的超集,它同樣是一門本地編程語言,但是Objective-C在C語言之上添加了一些包裝,從而降低了性能。如果你接觸過游戲和動畫相關東西,你應該知道使用c/c++提供的OpenGL會有更好的性能。
c++同樣被蘋果所支持。大部分基本的應用不需要接觸到c/c++代碼;但是,當你的應用需要很好的性能時,你應該考慮這方面的問題。而且,你不需要編寫很多的c/c++代碼,但是你需要了解如何通過庫正確的調用c/c++代碼。你有可能需要修改開源庫的源代碼來滿足你的要求。
因為Objective-C是C語言的超集,C語言中能做的事情,在Objective-C也能夠做。他們在語法和新的概念上有所不同,但是在本章我都會涉及到這些。同樣C++和Objective-C也有很多不同的概念,因此對你來說學習C++和C可能會比較困難。
實際上,Objective-C的概念是非常有限的,你在iPhone開發環境上看到的classes和supports都來自于Cocoa Touch。為了簡單起見,我將使用Objective-C作為Objective-C和Cocoa Touch Frameworks的簡稱。
優點和缺點
在進入C/C++編程之前,我想快速的分析一下在iOS應用中使用C/C++代碼的優缺點。
優點:
已經有很多用c/c++編寫的庫,例如動畫,音頻庫。這些庫通常都是用c/c++編寫的,因為這樣有很高的性能和可移植性。
你的應用想要移植到Android,而又不想耗費太多的精力。
你可能想通過使用c/c++代碼提高應用的性能
缺點:
c/c++和Objective-C的語法不同,把他們混在一起,使得代碼比較難理解。
c/c++和Objective-C的內存管理機制不同,因此你必須小心內存泄露或應用崩潰的問題。
因此,了解了他們的優點和缺點,你就能夠決定是否要在iPhone應用程序中集成c/c++代碼。不管你是使用開源庫還是自己編寫代碼,你都應該在這之前理解c/c++。出現的許多問題都是非常微妙的,以至于iPhone instruments并不能幫你太多。花費一個小時的時間很容易集成一個庫 --- 但是往往要花費一整天的時間來修復其中的一個bug。
Objective-C已經是一門本地編程語言,因此如果你所有的代碼都用c/c++來編寫,其實你并不能得到更好的性能。但是,有很多用c/c++編寫的高性能的庫,你可以利用它們的優點,然后集成到你的應用中。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。