我正在創建一個應用程序,在該應用程序中我多次執行相同的操作。我儘可能少用代碼,我不想重複自己。帶有參數的iPhone SDK函數/方法
我需要一個可重用函數的PHP等價物,其中我設置了一個輸入,並且該函數將返回輸出。
該應用程序是一個URL縮短器,因此您可能會假定輸入是一個URL,輸出是短URL。
這是什麼最好的方法呢?我知道我可以兩次編碼相同的東西,但我討厭重複自己。
希望我得到了我的觀點。任何幫助是極大的讚賞。 -Giles
我正在創建一個應用程序,在該應用程序中我多次執行相同的操作。我儘可能少用代碼,我不想重複自己。帶有參數的iPhone SDK函數/方法
我需要一個可重用函數的PHP等價物,其中我設置了一個輸入,並且該函數將返回輸出。
該應用程序是一個URL縮短器,因此您可能會假定輸入是一個URL,輸出是短URL。
這是什麼最好的方法呢?我知道我可以兩次編碼相同的東西,但我討厭重複自己。
希望我得到了我的觀點。任何幫助是極大的讚賞。 -Giles
道歉,如果我簡化你的問題,但你問如何定義一個Objective-C方法?如果是的話,你將不得不學習Objective-C,有沒有辦法解決它:
The Objective-C Programming Language - Object Messaging
你可以做很多偉大的事情與iPhone和Mac平臺沒有代碼,但很難想象沒有編寫的某些代碼來完成任何有用的應用程序。
例
- (float)multiplyThisFloatByTwoPointFive:(float)numberToMultiply
{
return numberToMultiply * 2.5;
}
要叫它:
[self multiplyThisFloatByTwoPointFive:3.7];
庫
如果你的意思是「我想不想找個地方把這些非類具體方法我可以通用訪問它們「,例如,一個庫,你可以通過兩種方式來實現:
那麼技術上沒有什麼使用C函數阻止他有了Objective-C對象,它看起來就像它通常會被折磨一樣。我可能會把它放在某個地方的單例類(app delegate?)中,或者像你提到的那樣在類中使用靜態方法。 – 2009-11-30 20:02:04
不僅沒有什麼技術上阻止他,這很常見。我會好奇爲什麼有人會對它不滿 - Objective-C是C的超集。我提到C函數僅適用於C-primitive-only例程,因爲如果非常頻繁地調用,你會獲得某些*速度開溝Obj-C消息調度開銷。在高吞吐量計算中,這可以造成巨大的差異。當然,先量一下。 :-) – 2011-04-24 13:52:19
我幾乎在這一個新手,但你肯定可以寫功能(而不是方法)的目的C.
我最近寫了幾個實用功能。我創建了一個NSObject文件來放置它們,但它沒有聲明ivars或方法,只是函數。然後在.m文件中實現函數,然後將.h文件導入到您想要函數的任何類文件中。您顯然可以在任何導入了函數文件的.m文件中的任何位置調用這些文件。
約翰·多納
的代碼示例在哪裏;(這個答案很好:「是的,你可以。」 – 2010-07-15 10:39:41
可能重複http://stackoverflow.com/questions/1658433/accessing-method-from-other-classes-objective-c/ – 2009-11-30 20:09:06