好吧,虽说本猫不能自吹精通十几种语言,但是也见过十几种语言的语法啊.像obj-c这样奇葩,或者说另类的写法还是头一次见到,完整写法我都不知道怎么起方法名了.虽说有简短写法,可和C比起来那个"繁琐"啊,更别说ruby了,我感觉asm都别他简单些哦.
好了,废话不说了,现在我们为Box类添加一个新的实例方法,一次性设置l和w的值,就是说该方法有2个参数哦.我们为它起名为...为....为不出来鸟.勉强起 set_l: and_w: 吧:
#import <Foundation/Foundation.h> @interface Box:NSObject{ int l; int w; } @property int l,w; -(void)set_l :(int)l and_w:(int)w; -(void)print; @end
实现如下:
-(void)set_l:(int)l_v and_w:(int)w_v{ l = l_v; w = w_v; }
调用如下:
[box set_l:1001 and_w:1002];
这个是否继承了smalltalk的基因哦?我不确定,但我确定一定有更简单的写法,那些语言黑客的KISS原则哪去了?bingo!果然有,写法如下:
-(void)set_all :(int)l :(int)w; -(void)set_all:(int)l_v :(int)w_v{ l = l_v; w = w_v; } [box set_all:2001:2002];
还好还好,没有让我一上来就对obj-c感到最大惊奇啊!