CLLocationCoordinate2D 用法 和一个最隐蔽的错误


参考:http://www.2cto.com/kf/201207/138950.html        写的比较实在,可以看看

初始化方法1:

	CLLocationCoordinate2D startPt = (CLLocationCoordinate2D){0, 0};    //纬度,经度
	CLLocationCoordinate2D endPt = (CLLocationCoordinate2D){0, 0};

 初始化方法2:

CLLocationCoordinate2D coords = CLLocationCoordinate2DMake(39.915352,116.397105);//纬度,经度

 

====教训====  

A 代码段

        NSLog(@"驾车路线终点坐标====%f,%f",[_endCoordainateXText floatValue],[_endCoordainateYText floatValue]);
	endPt = (CLLocationCoordinate2D){[[_endCoordainateXText floatValue],_endCoordainateYText floatValue]};

 B 代码段

        NSLog(@"驾车路线终点坐标====%f,%f",[_endCoordainateXText floatValue],[_endCoordainateYText floatValue]);
        endPt = (CLLocationCoordinate2D){[_endCoordainateXText floatValue],[_endCoordainateYText floatValue]};

请找出A 、 B 两段代码的不同!

 

 

 

答案揭晓:A 段代码 第二行中_endCoordainateYText floatValue]的前半个括号位置不对!B段代码才是正确书写。

A段代码在程序运行中,并不会报错或者警告。为了找到这个错误,牺牲掉了我一整夜的睡眠!!终于搁置到第3天的时候才发现!

上面最要命的是,NSLog 中的代码写对了,但实际代码中确实错的。这让我面临,程序既没有报错,控制台输出也正确的尴尬境地!错的太隐蔽!

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM