我有一个非常长的目标c函数定义,我想把它分成多行,以使函数更具可读性。假设我有这样的定义:
-(id) initWithBsType:(NSInteger)buysell AccountCode:(NSString *):c_acc_code password:(NSString *)password exchangeCode:(NSString *)ecode productCode:(NSString *)product orderType:(NSString *)otype price:(NSString *)price qty:(NSString *):qty reference:(NSString *)ref enablePriceWarn:(BOOL)enablepw enableApprvWarn:(BOOL)enableaw orderValidity:(NSString *)validity;我应该插入什么来将它拆分为3-4行?
(我正在创建一个可以使用libxml序列化为xml的对象,因此我需要能够在创建时为该对象分配这么多参数。)
发布于 2009-12-04 13:14:25
在典型的Objective-C风格中,跨越多行的方法通常用冒号对齐,以使它们更具可读性:
-(id) initWithBsType:(NSInteger)buysell
AccountCode:(NSString *)c_acc_code
password:(NSString *)password
exchangeCode:(NSString *)ecode
productCode:(NSString *)product
orderType:(NSString *)otype
price:(NSString *)price
qty:(NSString *)qty
reference:(NSString *)ref
enablePriceWarn:(BOOL)enablepw
enableApprvWarn:(BOOL)enableaw
orderValidity:(NSString *)validity;发布于 2009-12-04 13:15:10
或者,在Xcode的“缩进”配置中,您可以打开“换行”来启用软换行,这样您就再也不用担心这个问题了。
发布于 2009-12-04 14:02:10
看到长长的参数列表,我想知道调用函数是什么样子的……可能会很长。
我建议使用结构,也许可以将XML的读取拆分成更多的方法,例如:
typedef struct {
/* ... */
} Order;
// extend the xml-reader for clean seperation,
// seperate into multiple methods if too big
-(BOOL) readOrder:(Order*);现在你的初始化器只需要接受一个参数:
-(id) initWithOrder:(Order*)order;https://stackoverflow.com/questions/1844961
复制相似问题