我似乎很难理解如何在 Objective-C 中使用 Class static consts。
我来自 PHP 背景,我真正想做的是相当于:
我的对象.php
<?
class MyObject {
const A_VALUE = 1;
const ANOTHER_VALUE = 2;
}
?>
哪个可以像
MyObject::A_VALUE
在课堂上像
self::A_VALUE
我想在 Obj-C 中复制这种行为,但我知道语法有很大不同。
在 Objective-C 中
我想它看起来会类似于这个
我的对象.h
static int A_VALUE = 1;
static int ANOTHER_VALUE = 2;
@interface MyObject : NSObject;
这在技术上有效,但它会引发大量关于未使用变量的警告
然而
我的对象.h
static NSString *A_VALUE = @"1";
static NSString *ANOTHER_VALUE = @"2";
@interface MyObject : NSObject;
这可以正常工作。尽管没有在任何地方使用。
好吧,我不想使用一大堆字符串,这不仅感觉效率不高(尤其是当有很多字符串时),而且我讨厌查看我的代码并看到一堆
if( [value isEqualToString:A_VALUE] ) {
只是。总的。可能会更糟,但是eww。我会选择:
if( value == A_VALUE ) {
但是我现在所做的工作,但我有点茫然。
Objective C中制作consts(特别是int)的正确方法是什么
大家加油!