//: C07:Mem2.h
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 2000
// Copyright notice in Copyright.txt
#ifndef MEM2_H
#define MEM2_H
typedef unsigned char byte;

class Mem
{

byte* mem;
int size;
void ensureMinSize(int minSize);
public:

/* Si noti, a differenza del Mem.h, che qui il costruttore è unico ma con parametri di defualt; tali argomenti hanno la proprietà di avere un valore assegnato che viene preso per buono nel caso in cui all'invocazione del metodo non vengano passati argomenti */

Mem(int sz = 0);
~Mem();
int msize();

/* Anche per questo metodo abbiamo parametri di default */

byte* pointer(int minSize = 0);

}; 
#endif // MEM2_H ///:~