- UInt index = 0; \
- typeof(item_) item__ = item_; \
- for (; index<heap->array->size; index++) \
- { \
- void* pItem = ((ItemValue*)(heap->array->datas[index]))->item; \
- if (*((typeof(&item__))pItem) == item__) break; \
- } \
- _heap_modify(heap, index, newValue); \
+ typeof(item) item_ = item; \
+ _heap_modify(heap, &item_, newValue); \