代码规范
2018-07-09
首先说,也算是我的失误。
也算是代码规范的一个方面:少用全局变量。
在转移别人的代码的时候,原码是这样的
//initialize stuff fftConverter = FFTHelperCreate(accumulatorDataLenght);
然后我就很自然的,改成了
//initialize stuff FFTHelperRef *fftConverter = fftConverter = FFTHelperCreate(accumulatorDataLenght);
ok,呀,也不报错,后来,就因为这里,埋下了地雷。
工程死活跑不通,心想,不对呀,代码都一样的。
后来,我在就报错的位置打断点,看一个一个参数(这个技巧很实用,在代码报错处,查看一个一个参数、环境变量是否正常)
然后发现一个变量FFTHelperRef 居然为空,
然后我就往上层走,看哪里调用这个方法,发现调用它的地方,直接用了fftConverter变量,所以这个变量是全局,它就这里悄悄摸摸地注入进去了,还是个Null的
后来只能写一个全局定义,然后赋值,因为我也不知道它哪些地方直接调用了,就不想改它的代码了,直接依它吧。
// The Main FFT Helper
FFTHelperRef *fftConverter = NULL;
FFTHelperRef *fftConverter = NULL;
。。。。。。。。中间隔了很多代码和花扣号啦。
//initialize stuff fftConverter = FFTHelperCreate(accumulatorDataLenght);
posted on 2018-07-09 12:41 angelshelter 阅读(131) 评论(0) 编辑 收藏 举报