📄 splitheap.h
字号:
#ifndef _SPLITHEAP_H_#define _SPLITHEAP_H_template <class SuperHeap>class SplitHeap : public SuperHeap {public: inline void * malloc (const size_t sz) { void * ptr = SuperHeap::malloc (sz); if (ptr != NULL) { markInUse (ptr); size_t oldSize = getSize(ptr); if (oldSize <= sz + sizeof(double)) { return ptr; } else { void * splitPiece = split (ptr, sz); if (splitPiece != NULL) { // printf ("split %d into %d and %d\n", oldSize, getSize(ptr), getSize(splitPiece)); markFree (splitPiece); SuperHeap::free (splitPiece); } } } return ptr; }};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -