使用typedef
聲明使我們能夠創建一個新的類型的數據與給出的類型,例如typedef NSString *String;
typedef語句
我也可以治療的新型像NSString
:
typedef NSString *String;
String myString = @"Programming is";
NSLog(@"%@", [myString stringByAppendingString:@"cool"]);
我的問題是 - 我不能使用類方法嗎?下面的代碼產生一個錯誤:
String newString = [[String alloc]init];
錯誤說:Receiver type 'String' (aka 'NSString') is not an Objective-C class
但隨着typedef
發言中,我們得到相同的NSString對象(在我的理解)既類方法和實例方法。實例方法工作正常,類方法不起作用。
這是爲什麼發生?
使用的typedef別名框架類的名稱是一個可怕的想法,順便說一句。 – jlehr 2015-02-11 13:01:01
@jlehr我只是爲了學習語言功能:) – 2015-02-11 14:27:03
優秀,否則我會一直擔心你。 :-) – jlehr 2015-02-11 18:22:18