我有一個參數v,我希望它可以返回不同對象的函數(myFunction的)取決於V的價值像下面函數返回不同的對象
東西:
-(NSString*)myFunction:(NSInteger)v;
-(NSNumber*)myFunction:(NSInteger)v;
這可能嗎?
歡迎任何評論
感謝InterDev中
我有一個參數v,我希望它可以返回不同對象的函數(myFunction的)取決於V的價值像下面函數返回不同的對象
東西:
-(NSString*)myFunction:(NSInteger)v;
-(NSNumber*)myFunction:(NSInteger)v;
這可能嗎?
歡迎任何評論
感謝InterDev中
您可以隨時返回id
,但我認爲這可能是誰在使用此功能,因爲他們不知道什麼函數將返回混亂。
根據您正在使用的功能的情況下,它很可能是更好的只是具有不同的功能
-(NSString*)myFunctionNSStringForNSInteger:(NSInteger)v;
-(NSNumber*)myFunctionNSNumberForNSInteger:(NSInteger)v;
如果你想讓它做取決於v
的價值,爲什麼不只是切換不同的事情取決於v
的值,並用所需的返回類型調用相關函數?
您可以聲明函數返回NSObject。然後你可以返回從NSObject繼承的各種對象。在使用該函數時,您可能必須檢查返回對象的類型,具體取決於您想要對結果執行的操作。