使用对象,我可以编写一个访问器以nil
在对象无效时返回:
- (Weather *)howsTheWeather
{
if (![WeatherNetwork isAvailable]) {
return nil;
}
Weather *weatherNow = [WeatherNetwork getWeather];
return weatherNow;
}
我想用 a 来执行此操作CLLocationCoordinate2D
, astruct
用于保存纬度和经度。我试过这个:
- (CLLocationCoordinate2D)coordinate
{
CLLocationCoordinate2D coord = CLLocationCoordinate2DMake(self.latitude, self.longitude);
if (!CLLocationCoordinate2DIsValid(coord)) {
return nil;
}
return coord;
}
但编译器抱怨“从结果类型不兼容的函数中返回 'void *' 'CLLocationCoordinate2D'”
处理这种情况的最佳方法是什么?我正在考虑编写一个单独的方法-(BOOL)isLocationValid:(CLLocationCoordinate2D)coordinate
。有没有更好的方法来处理这个问题?