我尝试在 Google 或 Stackoverflow 上搜索,但找不到这样的运算符。在 C 中,我们曾经定义过一个cmp
宏,但是有内置的东西吗?
问问题
75 次
2 回答
4
正如@Kashiv 提到的,100% 的 C 在 Objective-C 中可用。但是,如果您正在使用 Cocoa 框架并询问更“可可”的方法,则 NSNumber 有一个compare:方法,它返回一个NSComparisonResult,它可以是 -1、0 或 1。
但是,如果我们在编程中完全是 Cocoa,我们应该进一步从 -1、0 和 1 的具体知识中抽象出来,并使用常量 NSOrderedAscending、NSOrderedSame 和 NSOrderedDescending。这些是语义命名的,这就是以这种方式编程的真正价值。
NSComparisonResult order = [myInt compare:anotherInt];
switch(order) {
case NSOrderedAscending:
// myInt is greater than anotherInt
break;
// ... etc
}
于 2012-09-09T20:22:57.997 回答
0
在 C 中可以做的任何事情,都可以在 Objective-C 中完成。
于 2012-09-09T20:18:13.803 回答