符号问题

时间:2011-05-04 09:22:46

标签: iphone objective-c

当我输入[lat1 = newLocation.coordinate.latitude]时;它的预期:之前的标记就像那样。我的错是什么?因为我是这个领域的新手。请拜托我。

先谢谢你......

3 个答案:

答案 0 :(得分:1)

如果您要比较lat1newLocation.coordinate.latitude,则正确的陈述是:

if (lat1 == newLocation.coordinate.latitude) {
    // do something here
}

如果您尝试将newLocation.coordinate.latitude的值分配到lat1,则正确的陈述是:

lat1 = newLocation.coordinate.latitude;

如果您正在尝试做第一件事并且比较变量是浮点数,那么您可能想要检查它们是否足够接近而不是相等:

if (fabs(lat1 - newLocation.coordinate.latitude) < someLittleDistance) {
    // close enough
}

...当然,您必须定义someLittleDistance

答案 1 :(得分:0)

尝试以下方法..

从你的行中移除[]括号

lat1 = newLocation.coordinate.latitude;

答案 2 :(得分:0)

当xCode的行为像这样时,它可能想说某事是方法,或者它认为某种方法。像往常一样,Objective-C中的点符号是某种类似于setter的东西。例如

ObjectA.property1 = value;

相当于

[ObjectA setProperty1:value];

在最后一种情况下,xCode期望看到:在setter调用之后和列之后的值。