std::stable_partition(windspeed_datas1.begin(), windspeed_datas1.end(), [](double x) { return x != 0; }); 使用qt4 写出其他做法
时间: 2024-03-10 20:49:38 浏览: 131
A20_sys_partition.fexv1.3.zip_A20_partition_sys_partition.fex
在Qt4中,可以使用QMutableListIterator来实现stable_partition的功能。具体实现如下:
```cpp
QMutableListIterator<double> iter(windspeed_datas1);
while (iter.hasNext()) {
if (iter.next() == 0) {
iter.remove();
}
}
```
这个做法的思路是遍历windspeed_datas1中的每一个元素,如果元素为0,则使用QMutableListIterator的remove函数将其删除。由于QMutableListIterator是一个双向迭代器,因此可以保证删除元素时不会影响其他元素的位置,从而实现stable_partition的效果。
阅读全文