lqmain.cpp

来自「经典c++程序的实现」· C++ 代码 · 共 48 行

CPP
48
字号
// lqmain.cpp

#include <stdio.h>
#include <assert.h>
#include <iostream.h>
#include <string.h>

#include "..\include\book.h"

typedef int ELEM;

#include "..\include\linkf.h"

// This creates space for the freelist variable
link* link::freelist = NULL;

void* link::operator new(size_t) { // Overload new operator
  if (freelist == NULL) return ::new link;  // Create new space
  link* temp = freelist;           // Otherwise, get from freelist
  freelist = freelist->next;
  return temp;                     // Return the link node
}

void link::operator delete(void* ptr) { // Overload delete operator
  ((link*)ptr)->next = freelist;        // Put on freelist
  freelist = (link*)ptr;
}

#include "..\include\lqueue.h"

main()
{
  Queue L1;
  Queue L2(15);

  L2.enqueue(10);
  L2.enqueue(20);
  L2.enqueue(15);
  while(!L2.isEmpty()) {
    cout << L2.firstValue() << " ";
    L1.enqueue(L2.dequeue());
  }
  cout << "\n";
  cout << "New front: " << L1.firstValue() << "\n";
  L1.clear();
  return(0);
}

⌨️ 快捷键说明

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