從C/C++到Objective-C(二)--- 面向?qū)ο?/h1>
[導(dǎo)讀]? ? OC和C++對C的擴展最重要的當(dāng)然就是“面向?qū)ο蟆绷耍瑢W(xué)習(xí)了C++對面向?qū)ο笞匀粚γ嫦驅(qū)ο笠稽c也不會感到陌生了,可能還覺得有點親切呢,陌生的語言中看到熟悉的詞,你說親不親切?。∶嫦?qū)ο蟮膸讉€重
? ? OC和C++對C的擴展最重要的當(dāng)然就是“面向?qū)ο蟆绷?,學(xué)習(xí)了C++對面向?qū)ο笞匀粚γ嫦驅(qū)ο笠稽c也不會感到陌生了,可能還覺得有點親切呢,陌生的語言中看到熟悉的詞,你說親不親切??!面向?qū)ο蟮膸讉€重要概念不外乎就是類,抽象,封裝,多態(tài)了, 思想都差不多的,主要就是實現(xiàn)的具體代碼不同罷了。面向?qū)ο笈c面向過程不同,前者是以程序的數(shù)據(jù)為中心,函數(shù)為數(shù)據(jù)服務(wù)。
? ? OC中有個概念叫“間接”,意思就和這個字面意思差不多,比如說基本的變量就是間接的一種實際運用,例如:int number = 8; 這里的number就代表了數(shù)字8,當(dāng)然也可以給它賦不同的值,它也就代表不同的數(shù)字,這里的number就代表了你給它賦的值?!伴g接”所指的就是這樣一種關(guān)系。我理解的是,這里的間接其實也就是抽象的一種運用罷了,很大的問題抽象出幾個間接層來,問題就被分小了,當(dāng)然解決起來也就容易多了。
? ? 這里給一個程序,是文件名的間接,這個還是挺好理解的。貼這段代碼是想表達,OC是對C的擴展,所以C中的很多東西都是可以直接用的,當(dāng)然頭文件得換換了。
#importint?main?(int?argc,?const?char?*?argv[]) { FILE?*wordFile?=?fopen?("/tmp/words.txt",?"r"); char?word[100]; while?(fgets(word,?100,?wordFile))?{ //?strip?off?the?trailing?n word[strlen(word)?-?1]?=?'