⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 array.cc

📁 这是一个做pdf阅读器的源代码文件,是大家学习阅读器资料的很好参考
💻 CC
字号:
//========================================================================//// Array.cc//// Copyright 1996-2003 Glyph & Cog, LLC////========================================================================#include <aconf.h>#ifdef USE_GCC_PRAGMAS#pragma implementation#endif#include <stdlib.h>#include <stddef.h>#include "gmem.h"#include "Object.h"#include "Array.h"//------------------------------------------------------------------------// Array//------------------------------------------------------------------------Array::Array(XRef *xrefA) {  xref = xrefA;  elems = NULL;  size = length = 0;  ref = 1;}Array::~Array() {  int i;  for (i = 0; i < length; ++i)    elems[i].free();  gfree(elems);}void Array::add(Object *elem) {  if (length == size) {    if (length == 0) {      size = 8;    } else {      size *= 2;    }    elems = (Object *)greallocn(elems, size, sizeof(Object));  }  elems[length] = *elem;  ++length;}Object *Array::get(int i, Object *obj) {  if (i < 0 || i >= length) {#ifdef DEBUG_MEM    abort();#else    return obj->initNull();#endif  }  return elems[i].fetch(xref, obj);}Object *Array::getNF(int i, Object *obj) {  if (i < 0 || i >= length) {#ifdef DEBUG_MEM    abort();#else    return obj->initNull();#endif  }  return elems[i].copy(obj);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -