4

我需要测试一个属性是否为空。在我的头文件中是这样声明的:

@property (nonatomic) char nextOperation;

在 .m 文件中:

@synthesize nextOperation;

如果我做错了什么,请纠正我,我在这个世界上很新。

在一种方法中,我必须测试 nextOperation 是否有任何内容。如果为真(YES?)我应该做点什么,然后为该属性分配一个新值。

我试过nextOperation == '', empty, isEmpty, isempty, 一切都会给我一个 Xcode 警告/错误。

4

2 回答 2

6

char 不能为空。char 是一个标量值,就像一个 int - 只是小一点(通常是 8 位)。您可能希望将其与00x00的目的进行比较。

例如

if (!self.nextOperation)
{
    //empty nextOperation
}
else
{
    //we got something in nextOperation
}
于 2012-10-01T22:09:03.250 回答
3

试试这个:

if (self.nextOperation == 0) {
    // it's empty
}

或者干脆

if (!self.nextOperation) {
}

当您声明这样的属性时(无需显式声明 ivar 或使用@synthesize),您可以使用点语法 ( self.property) 或使用以下划线 ( ) 开头的自动生成的 ivar来访问该属性_property

于 2012-10-01T22:06:44.817 回答