#从Stlport和NaN说开去
##起因 上个月的时候,在项目中发生了一件莫名其妙的core dump。Client部门的同事熬夜跟踪埋伏得到的信息是使用stlport的sort对一个vector排序导致迭代器越界。其中提供了一个线索是:vector中存放的是单精度浮点数,并且有NaN。
随后,Client部门同事为了验证这个问题,得到两个结论:
- 1、 构造了一个独立的测试用例,证实了一个vector中如果有NaN的话,调用std::sort会导致迭代器越界。
- 2、 使用ms的stl没有这个问题。