#include <iostream>
#ifndef DIALER_HH
#define DIALER_HH
#include "Button.hh"
#define DEFAULT_NUMBER_BUTTONS 12
class Dialer {
public:
Dialer() {
std::cout << "Dialer Constructor " << this << std::endl ;
init();
}
Dialer(const Dialer& other) {
std::cout << "Dialer Copy Constructor " << this << std::endl ;
init(other.buttons_size);
// Copy the buttons
for ( int i = 0; i < other.buttons_size; i++ ) {
buttons[i] = other.buttons[i];
~Dialer() {
std::cout << "Dialer Destructor " << this << std::endl ;
delete[] buttons ;
private:
void init()
{
this->init( DEFAULT_NUMBER_BUTTONS );
void init( int num_buttons )
buttons_size = num_buttons;
buttons = new Button[buttons_size];
Button* buttons ;
int buttons_size;
} ;
#endif