XCode iOS调试总结

来源:互联网 发布:阿里云 数据中心 宕机 编辑:程序博客网 时间:2024/06/06 02:46

今天和别人调了一天的代码

最开始想用自己的XCode6.4 + 虚拟机打包成.a文件给他调用,之前用这个环境测试了能在Mac环境下使用Command line工程

但是用源代码新建iOS工程就一直报错,期间调试过编译器的参数,添加各种库文件,好像高版本opencv3是ok的,2.4.9就不行

后来他用XCode8导入249的framework是可以运行的,但是在我的环境下一直不行,猜想是XCode版本低,或者虚拟机不稳定吧

那好吧,源码给你用(师兄别打我。。。),但是麻蛋函数可以调用,但是跑在App上就崩溃了,后来发现跑在我的Mac环境也有这个问题,只不过报错信息显示得太小了,

在函数return前都是ok的,但是一旦return完就崩溃,后来猜想是内存泄露问题

无奈,采用最简单,也是这种毫无头绪下调试的最有效的方法:先把调用的函数全部注释掉,看能不能掉用,能不能return,能就一行行接触注释,一直找到使得不能return的那行

最后确认为是sprintf的内存缓存泄露问题,改为stringstream就能在Mac上无错的跑了

但是在他的iOS下有另外一个错,因为我是返回一个C++数组,定义在一个h文件中,但是他在class构造函数里面会出错,好奇怪,

因为这个类是我写的,复制给他的,可能会有一些莫名其妙的差别,于是在他电脑上新建一个类,发现对应的头文件是.hpp的后缀,能构造这个类,

尝试把头文件.h也改成.hpp,可以了,估计又是iOS与Mac有区别,或者XCode版本(编译器之类)的原因

反正解决了。。。。


也明白了科班因为做了很多这样的项目,所以不知不觉能力都比我们这些非科班的强很多。。。。

So,problem motivated

原创粉丝点击