繁体   English   中英

指针不能强制转换为“ double”类型

[英]Pointer cannot be cast to type 'double'

我想在地图上同时显示多个注解。 我遇到的问题是,我的纬度和经度都像NSString一样...

我想将字符串转换为duble,以便可以传递给“ CLLocationCoordinate2D”实例。.但是我收到错误消息,该错误指出:指针不能强制转换为“ double”类型

locationCoordinate.latitude=(double)NearbyLocations.lat;
locationCoordinate.latitude=(double)NearbyLocations.lng;

这是我有问题的代码的一部分。 但是,您可能会看到我还没有完成。

NSMutableArray *locations= [[NSMutableArray alloc]init];
CLLocationCoordinate2D locationCoordinate;
location *NearbyLocations;
Annotation *annotatedLocations;

//for (int i=0; i < locationOnMap.count;i++) {


    annotatedLocations = [[Annotation alloc]init];

    locationCoordinate.latitude=(double)NearbyLocations.lat;
    locationCoordinate.latitude=(double)NearbyLocations.lng;
    annotatedLocations.coordinate=locationCoordinate;
    annotatedLocations.title=NearbyLocations.lo_name;
    annotatedLocations.subtitle=NearbyLocations.lo_vicinity;
    [locations addObject:annotatedLocations];
//}

我该怎么做才能将点型字符串转换为双精度型

您必须使用NSString转换方法doubleValue 在这里看看: 如何在Objective-C中进行字符串转换?

这意味着您正在尝试将NSNumber目标C对象强制转换为C基本类型。 要将整数添加到字典中,必须将其转换为NSNumber对象。 要拉出它,您必须像这样将其转换回:

locationCoordinate.latitude = [NearbyLocations.lat doubleValue];
locationCoordinate.latitude = [NearbyLocations.lng doubleValue];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM