nobloat.h

来自「Think in C++ 2nd」· C头文件 代码 · 共 36 行

H
36
字号
//: C19:Nobloat.h

// From Thinking in C++, 2nd Edition

// Available at http://www.BruceEckel.com

// (c) Bruce Eckel 1999

// Copyright notice in Copyright.txt

// Templatized InheritStack.cpp

#ifndef NOBLOAT_H

#define NOBLOAT_H

#include "Stack4.h"



template<class T>

class NBStack : public Stack {

public:

  void push(T* str) {

    Stack::push(str);

  }

  T* peek() const {

    return (T*)Stack::peek();

  }

  T* pop() {

    return (T*)Stack::pop();

  }

  ~NBStack();

};



// Defaults to heap objects & ownership:

template<class T>

NBStack<T>::~NBStack() {

  T* top = pop();

  while(top) {

    delete top;

    top = pop();

  }

}

#endif // NOBLOAT_H ///:~

⌨️ 快捷键说明

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