Time of Update: 2018-12-04
#import <Foundation/NSString.h>#import <Foundation/NSAutoreleasePool.h>int main (int argc, const char * argv[]) {NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];NSString *str1 = @"This is a example.";NSMutableString *mstr = [
Time of Update: 2018-12-04
感覺Objective-C 真的很格斯! 讓我這個寫C++的情何以堪啊 #import <Foundation/Foundation.h>@interface Main: NSObject{int Number;int i,j;}-(void) setI:(int) ii andJ:(int) jj;-(void)print;@property int Number;@end@implementation Main@synthesize Number;-(void) setI:(
Time of Update: 2018-12-04
一、前言 對於大多數從C++或者JAVA轉過來學習Object-C(以下簡稱OC)的人來說,OC這門語言看起來非常奇怪,用起來也有點麻煩。 OC沒有像JAVA一樣的記憶體回收機制,也就是說,OC編程需要程式員手動去管理記憶體。這就是為什麼它煩的原因,蘋果卻一直推崇開發人員在有限硬體資源內寫出最佳化的代碼,使用CPU最少,佔用記憶體最小。 二、基本原理對象的建立:
Time of Update: 2018-12-04
最近在公司做一個掌上青蛙的遊戲項目,是採用c++寫的cocos2d-x開發的,它是iPhone上cocos2d架構另一個語言版本的實現,最大的優勢是能實現跨平台運行,通過簡單的修改就可以在android和iPhone上跑了。 因為功能和介面和objective-c版本的差不多,所以在記憶體管理上也採用objective-c引用計數的機制來實現記憶體管理。仔細看了一下cocos2d-x的原始碼,確實寫的很好,程式碼群組織得很工整。它們所有類都是繼承自CCObject,
Time of Update: 2018-12-04
iOS開發之Objective-C與JavaScript互動操作是本文要介紹的內容,主要主要是講解了stringByEvaluatingJavaScriptFromString的用法,它的功能非常的強大,用起來非常簡單,通過它我們可以很方便的操作uiwebview中的頁面元素。UIWebView是iOS最常用的8SDK之一,它有一個stringByEvaluatingJavaScriptFromString方法可以將javascript嵌入頁面中,通過這個方法我們可以在iOS中與UIWebVie
Time of Update: 2018-12-04
有的自己都還沒來得及看,先放在這裡: 1,把對象視為記憶體。每個對象執行個體的狀態都被儲存在不同的記憶體地區中。因此對象的建立與刪除動作等價於它所佔用記憶體的分配與回收。基於Foundation的類庫,都通過一個根對象“NSObject”或有同樣介面的其它類,為執行個體提供關聯記數的機制(包括延遲釋放的對象)。大多在Apple類庫的類與基於“NSObject”的子類或它介面的實作類別,都可以享有記憶體記數策略帶來的管理能力。Apple類庫(Apple's
Time of Update: 2018-12-04
日誌記錄 在Objective-C中,將日誌資訊輸出到控制台是非常簡單的。實際上NSLog()函數很像C語言裡面的printf()函數,除了要用一個%@符號代表一個對象。 NSLog ( @"The current date and time is: %@", [NSDate date]
Time of Update: 2018-12-04
記憶體管理基礎 當你為Mac OSX編寫應用程式時,你可以選擇允許記憶體回收。這意味著如果不是在特別複雜的情況下,你不用考慮記憶體管理。然而,你並不會總是工作在支援記憶體回收的環境中。這樣的話,你就需要知道一些基本概念。如果你通過手工alloc的方式建立一個對象,之後你需要release這個對象。同樣,你也不能手工釋放(release)一個能自動釋放(autoreleased)的對象,因為這將會使你的應用程式崩潰。 以下是兩個例子: //string1 將被自動釋放 NSString*
Time of Update: 2018-12-04
代碼塊本質上是和其他變數類似。不同的是,代碼Block Storage的資料是一個函數體。使用代碼塊是,你可以像調用其他標準函數一樣,傳入參數數,並得到傳回值。脫字元(^)是塊的文法標記。按照我們熟悉的參數文法規約所定義的傳回值以及塊的主體(也就是可以執行的代碼)。是如何把塊變數賦值給一個變數的文法講解:按照調用函數的方式調用塊物件變數就可以了:int result = myBlock(4); // result是 281、參數是NSString*的代碼塊
Time of Update: 2018-12-04
Learn Objective‐C原文地址 http://cocoadevcentral.com/d/learn_objectivec/ 譯者前言 在網上看到這篇文章覺得寫的很不錯,但是貌似沒有人翻譯成中文,我就大膽翻譯了。本人做軟體開發6年了,但是大多數是在Windows平台上,最近才在我的機器上裝了一個leopard,在Objective-C上也是一個新手,對於本文翻譯的是否到位心裡還在打鼓。如果有覺得翻譯不對不好的地方,請與我聯絡,我的油箱是:cchenhao at gmail dot
Time of Update: 2018-12-04
1、通過xcode建立Objective-C源檔案時,可以勾選同時產生.h檔案這個功能,在我這xcode是自動被勾選的 2、代碼自動完成,xcode的代碼自動完成功能也不錯2.1、括弧匹配,通常你下前一個‘[’的時候,後面的‘]’會自動產生2.2、還有比較便利的是,調用方法的時候,會自動補充所有的變數,你只需要寫完第一個參數後按Tab鍵,xcdoe就會自動跳轉到輸入下個參數的地方,並替你完成參數的標識2.3、Esc鍵可以直接跳出提示,當你想使用某個類的方法而又無從下手時,直接輸入完[class
Time of Update: 2018-12-04
一,建立一個hello world程式 1、啟動Xcode, File -> New Project 左邊選擇 Command Line Utility,右邊選擇Foundation Tool 2、編譯運行按鈕Build and Go 或者 command + R,就可以編譯並運行程式 Run->Console,或者 Command + shift + R 就可以開啟Xcode控制台視窗,看到運行結果。 二,代碼基礎1、可以用#import 代替
Time of Update: 2018-12-04
Introduction to The Objective-C Programming Language物件導向C語言編程簡介: 物件導向的C語言是一種簡單的電腦語言,設計的目的是為了進行進階的物件導向編程。物件導向的C語言被定義成對標準C語言的小而強大的擴充集合。是對C語言的擴充但是主要基於Smalltalk語言,最早的物件導向程式設計語言之一。設計物件導向的C語言是為了給C語言完全的物件導向編程能力,通過一種簡單直接的方法。
Time of Update: 2018-12-04
1、 繼承的文法如下:@interface TestCoop : NSObject { int iMonth; int iYear; int iDay;}- (void) setYear: (int) iYear;- (void) primalSetData: (int)iYear :(int)iMonth :(int)iDay;- (void) setData: (int)Year iMonth:(int)iMonth iDay:(int)iDay;- (void)
Time of Update: 2018-12-04
轉自:http://www.cnblogs.com/lm3515/archive/2010/12/20/1911135.html objective-c基礎教程——學習小結提綱:簡介與C語言相比要注意的地方objective-c進階特性開發工具介紹(cocoa 工具包的功能,架構,源檔案組織;XCode使用介紹) 簡介:1. objective-c是C語言的一個擴充集,主要由APPLE公司維護,是MAC系統下的主要開發語言。個人認為,對於用慣了常用的C,JAVA等語言的人來說,ob
Time of Update: 2018-12-04
轉自 http://blog.kungfusoft.com/programming/iphone/topic-281.html在使用諸如NSLog, [NSString stringWithFormat:]之類的函數時,都是基於c/c++風格的字串格式化工作的.本來c/c++就沒怎麼用過,到iphone開發開發時摻合上NS系的對象,格式化輸出更是一頭的亂.看了一下Programming Guide for Cocoa的文檔,還是有比較詳盡的說明的,整理出來備查.格式定義The format
Time of Update: 2018-12-05
當你沒有Mac和虛擬機器的時候,這麼在windows下編譯Objective-C程式呢??下面,我講詳細介紹怎麼在windows下編譯Objective-C語言1、安裝 Object-C的編譯器Objective-C 的編譯器有很多, 本文介紹使用GnuStep , 網址是http://www.gnustep.org/experience/Windows.html,從這裡可以下載Windows 版本的gcc 編譯器:下載這三個檔案,例如安裝到:D:\OC編譯器 2、安裝
Time of Update: 2018-12-05
之前寫過類似的文章,這篇以做總結,希望能協助剛上船的兄弟。^_^iPhone系統中的Objective-C的記憶體管理機制是比較靈活的,即可以拿來像C/C++一樣用,也可以加個AutoreleasePool讓它升級為半自動化的記憶體管理語言。當然,也不能拿JAVA虛擬機器中的全自動化GC來比〜一,引用計數是執行個體對象的記憶體回收唯一參考引用計數(retainCount)是Objective-C管理對象引用的唯一依據。調用執行個體的release方法後,此屬性減一,減到為零時對象的deallo
Time of Update: 2018-12-05
http://www.davidhamrick.com/2012/05/28/Adding-Properties-to-an-Objective-C-Category-Revisted.htmlIn my last post I wrote about adding properties to a category in objective-c. I have ended up using this feature quite a bit recently so I wrote a macro
Time of Update: 2018-12-05
http://www.davidhamrick.com/2012/02/12/Adding-Properties-to-an-Objective-C-Category.htmlLet’s say you have a category that needs to store some information. Unfortunately you can’t add an instance variable, but you can add something called an