亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? memcheck.cpp

?? Thingking_in_C++配套書籍例子代碼
?? CPP
字號:
//: C10:MemCheck.cpp {O}
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 2000
// Copyright notice in Copyright.txt
// Memory allocation tester
#include <cstdlib>
#include <cstring>
#include <cstdio>
using namespace std;
// MemCheck.h must not be included here

// Output file object using cstdio
// (cout constructor calls malloc())
class OFile {
  FILE* f;
public:
  OFile(char* name) : f(fopen(name, "w")) {}
  ~OFile() { fclose(f); }
  operator FILE*() { return f; }
};
extern OFile memtrace;
// Comment out the following to send all the
// information to the trace file:
#define memtrace stdout

const unsigned long _pool_sz = 50000L;
static unsigned char _memory_pool[_pool_sz];
static unsigned char* _pool_ptr = _memory_pool;

void* getmem(size_t sz) {
  if(_memory_pool + _pool_sz - _pool_ptr < sz) {
    fprintf(stderr,
           "Out of memory. Use bigger model\n");
    exit(1);
  }
  void* p = _pool_ptr;
  _pool_ptr += sz;
  return p;
}

// Holds information about allocated pointers:
class MemBag { 
public:
  enum type { Malloc, New };
private:
  char* typestr(type t) {
    switch(t) {
      case Malloc: return "malloc";
      case New: return "new";
      default: return "?unknown?";
    }
  }
  struct M {
    void* mp;  // Memory pointer
    type t;     // Allocation type
    char* file; // File name where allocated
    int line;  // Line number where allocated
    M(void* v, type tt, char* f, int l)
      : mp(v), t(tt), file(f), line(l) {}
  }* v;
  int sz, next;
  static const int increment = 50 ;
public:
  MemBag() : v(0), sz(0), next(0) {}
  void* add(void* p, type tt = Malloc,
            char* s = "library", int l = 0) {
    if(next >= sz) {
      sz += increment;
      // This memory is never freed, so it
      // doesn't "get involved" in the test:
      const int memsize = sz * sizeof(M);
      // Equivalent of realloc, no registration:
      void* p = getmem(memsize);
      if(v) memmove(p, v, memsize);
      v = (M*)p;
      memset(&v[next], 0,
             increment * sizeof(M));
    }
    v[next++] = M(p, tt, s, l);
    return p;
  }
  // Print information about allocation:
  void allocation(int i) {
    fprintf(memtrace, "pointer %p"
      " allocated with %s",
      v[i].mp, typestr(v[i].t));
    if(v[i].t == New)
      fprintf(memtrace, " at %s: %d",
        v[i].file, v[i].line);
    fprintf(memtrace, "\n");
  }
  void validate(void* p, type T = Malloc) {
    for(int i = 0; i < next; i++)
      if(v[i].mp == p) {
        if(v[i].t != T) {
          allocation(i);
          fprintf(memtrace,
          "\t was released as if it were "
          "allocated with %s \n", typestr(T));
        }
        v[i].mp = 0;  // Erase it
        return;
      }
    fprintf(memtrace,
    "pointer not in memory list: %p\n", p);
  }
  ~MemBag() {
    for(int i = 0; i < next; i++)
      if(v[i].mp != 0) {
        fprintf(memtrace,
        "pointer not released: ");
        allocation(i);
      }
  }
};
extern MemBag MEMBAG_;

void* malloc(size_t sz) {
  void* p = getmem(sz);
  return MEMBAG_.add(p, MemBag::Malloc);
}

void* calloc(size_t num_elems, size_t elem_sz) {
  void* p = getmem(num_elems * elem_sz);
  memset(p, 0, num_elems * elem_sz);
  return MEMBAG_.add(p, MemBag::Malloc);
}  

void* realloc(void* block, size_t sz) {
  void* p = getmem(sz);
  if(block) memmove(p, block, sz);
  return MEMBAG_.add(p, MemBag::Malloc);
}

void free(void* v) { 
  MEMBAG_.validate(v, MemBag::Malloc);
}

void* operator new(size_t sz) {
  void* p = getmem(sz);
  return MEMBAG_.add(p, MemBag::New);
}

void*
operator new(size_t sz, char* file, int line) {
  void* p = getmem(sz);
  return MEMBAG_.add(p, MemBag::New, file, line);
}

void operator delete(void* v) {
  MEMBAG_.validate(v, MemBag::New);
}

MemBag MEMBAG_;
// Placed here so the constructor is called
// AFTER that of MEMBAG_ :
#ifdef memtrace
#undef memtrace
#endif
OFile memtrace("memtrace.out");
// Causes 1 "pointer not in memory list" message
///:~

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产婷婷精品av在线| 国产不卡高清在线观看视频| 丝袜亚洲精品中文字幕一区| 99re热这里只有精品免费视频| 精品国精品国产| 免费欧美高清视频| 日韩限制级电影在线观看| 午夜不卡av在线| 日韩欧美一区中文| 亚洲第一精品在线| 99视频在线观看一区三区| 亚洲欧美怡红院| 日本久久一区二区| 亚洲美女淫视频| 色94色欧美sute亚洲13| 香蕉加勒比综合久久| 欧美日韩视频专区在线播放| 亚洲国产日韩一级| 欧美精品777| 捆绑变态av一区二区三区 | 亚洲国产欧美日韩另类综合| 色乱码一区二区三区88| 亚洲欧洲无码一区二区三区| 99re66热这里只有精品3直播| 国产精品久久福利| 欧美中文字幕亚洲一区二区va在线 | 激情文学综合插| 国产亚洲精品aa| 91小视频在线观看| 亚洲成人动漫在线观看| 91免费观看国产| 亚洲欧美国产三级| 欧美一区二区精品在线| 国产一区二区伦理片| 中文字幕一区二区不卡| 黄色小说综合网站| 国产精品国产三级国产aⅴ原创| 成人av免费在线观看| 亚洲欧洲国产日韩| 欧美私人免费视频| 一区二区三区色| 日韩一区二区三区免费看| 日韩在线a电影| 欧美激情艳妇裸体舞| 91成人免费电影| 亚洲成av人片一区二区梦乃| 日韩欧美国产综合| 成人精品视频一区二区三区尤物| 日韩**一区毛片| 国产三级欧美三级| 99re这里只有精品视频首页| 蜜臀久久久99精品久久久久久| 国产日韩欧美高清| 欧美一区二区在线播放| www.亚洲精品| 亚洲成人av一区二区三区| 日本一区二区电影| 欧美精品三级日韩久久| 成人午夜精品在线| 日韩成人精品在线观看| 自拍偷拍欧美激情| 欧美成人一区二区三区在线观看| 91在线丨porny丨国产| 免费在线欧美视频| 国产日韩欧美精品综合| 91精品国产丝袜白色高跟鞋| 91丝袜美腿高跟国产极品老师 | 亚洲欧美国产77777| 日韩精品专区在线| 国产99一区视频免费| 免费在线观看一区二区三区| 亚洲青青青在线视频| 国产日韩欧美综合一区| av中文字幕亚洲| 国产自产高清不卡| 午夜精品福利久久久| 中文字幕在线不卡一区| 2024国产精品| 欧美日韩国产首页| 91蜜桃视频在线| 成人性视频免费网站| 国产一区二区三区免费看| 奇米精品一区二区三区在线观看| 亚洲人成7777| 亚洲人成在线观看一区二区| 中文字幕高清不卡| 久久精品人人做人人爽人人| 26uuu成人网一区二区三区| 日韩精品一区二区三区蜜臀| 日韩一区二区三区在线| 69堂精品视频| 欧美在线免费视屏| 韩国av一区二区三区四区| 免费观看日韩电影| 奇米色777欧美一区二区| 日韩电影在线观看网站| 亚洲制服丝袜在线| 亚洲国产裸拍裸体视频在线观看乱了| 成人免费一区二区三区在线观看| 中文字幕av一区二区三区免费看| 国产午夜精品一区二区三区视频| 日韩视频免费观看高清在线视频| 欧美一区二区三级| 日韩你懂的在线播放| 欧美日韩一区久久| 蜜臀av性久久久久蜜臀aⅴ| 五月天网站亚洲| 国产精品一区二区三区乱码| 东方aⅴ免费观看久久av| 97久久精品人人做人人爽 | 看片的网站亚洲| 国产999精品久久| 99综合电影在线视频| 欧美无乱码久久久免费午夜一区| 69久久99精品久久久久婷婷| 日韩欧美亚洲一区二区| 国产精品久久国产精麻豆99网站| 一区二区三区色| 国产精品中文字幕日韩精品 | 国产精品免费丝袜| 亚洲黄色免费电影| 蜜桃av一区二区| 国产精品99久| 777久久久精品| 久久九九国产精品| 亚洲视频 欧洲视频| 亚洲视频资源在线| 毛片基地黄久久久久久天堂| 成人午夜看片网址| 色婷婷国产精品| 欧美成人乱码一区二区三区| 亚洲同性gay激情无套| 美女在线一区二区| 久久精品国产久精国产爱| 日本精品一区二区三区四区的功能| 51精品秘密在线观看| 亚洲欧美电影一区二区| 麻豆成人综合网| 欧美日韩国产一级二级| 久久久精品欧美丰满| 日本亚洲最大的色成网站www| 国产裸体歌舞团一区二区| 欧美伦理电影网| 综合自拍亚洲综合图不卡区| 亚洲美女免费在线| av一区二区不卡| 日韩一区二区三区视频在线 | 日韩欧美在线1卡| 国产人妖乱国产精品人妖| 免费看黄色91| 一本高清dvd不卡在线观看| 欧美激情在线免费观看| 日本欧美一区二区三区乱码| 欧美在线影院一区二区| 久久天天做天天爱综合色| 蜜桃精品视频在线| 91久久久免费一区二区| 日韩精品一区二区三区视频播放| 亚洲综合在线电影| 老司机免费视频一区二区三区| 正在播放一区二区| 亚洲欧美国产77777| 色婷婷激情久久| 国产精品久久久久久久久晋中 | 亚洲一区二区黄色| 91在线观看高清| 亚洲国产高清在线| 视频一区免费在线观看| 91精品国产一区二区| 亚洲黄色免费电影| 欧美性色黄大片| 亚洲欧美日韩国产中文在线| 91网址在线看| 国产精品卡一卡二卡三| 色综合天天狠狠| 国产精品免费丝袜| 91色porny| 亚洲激情成人在线| 在线不卡中文字幕| 日韩精品一级中文字幕精品视频免费观看 | 一区二区三区美女| 欧美日韩一区二区三区在线看| 最新中文字幕一区二区三区| 91在线精品一区二区三区| 中文av字幕一区| 色一情一伦一子一伦一区| 亚洲男人的天堂在线aⅴ视频| 色伊人久久综合中文字幕| 一区二区三区毛片| 99国产精品久| 五月婷婷激情综合网| 欧美精品一二三| 国产美女av一区二区三区| 久久精品日韩一区二区三区| 99久久国产免费看| 亚洲欧美电影院| 欧美va亚洲va香蕉在线| av一二三不卡影片| 日韩专区一卡二卡| 日韩欧美国产一区二区三区|