我希望枚举作为我的函数的参数。这会有用吗?
(UIFont*) myMethodName:(UITableViewCellStyle) cellStyle {
//...
if (cellStyle == UITableViewCellStyleValue2)
// ...
}
然后我会这样调用这个方法
UIFont *resultFont = [self myMethodName:UITableViewCellStyleSubtitle];
只允许以下参数: UITableViewCellStyleDefault, UITableViewCellStyleValue1, UITableViewCellStyleValue2, UITableViewCellStyleSubtitle
有可能吗?
答案 0 :(得分:3)
这会有效吗?→是
只允许以下参数:→不可以将输入限制为仅这些值,即
UIFont *resultFont = [self myMethodName:12345];
仍将编译(假设您没有使用Objective-C ++)。
答案 1 :(得分:2)
不确定
typedef enum _MyType {
type_a = -1,
type_b = 0,
type_c = 1,
} MyType;
...
- (void) someMethod:(MyType)type {
if (type == type_a) ...
}
答案 2 :(得分:0)
是的,这是可能的。
(这感觉就像一个不必要的简短回答,但我想不出任何其他的补充!)