我需要一种比较两个 CLLocationCooperative2D
的方法,但是当我尝试使用 ==
时,它不起作用。请问有人可以帮我找到比较它们的最佳方法吗?
最佳答案
比较任何给定结构类型的两个实例的通用方法:
memcmp(&cllc2d1, &second_cllc2d, sizeof(CLLocationCoordinate2D))
或
cllc2d1.latitude == cllc2d2.latitude && cllc2d1.longitude == cllc2d2.longitude
如果你真的想确保它们完全相等,应该可以。但是,考虑到纬度和经度被定义为 double ,您可能确实想要进行“足够接近”的比较:
fabs(cllc2d1.latitude - cllc2d2.latitude) <= epsilon && fabs(cllc2d1.longitude - cllc2d2.longitude) <= epsilon
其中 epsilon
是您想要接受的错误级别。
关于core-location - 如何比较 CLLocationCooperative2D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10199133/