Example 7-1: Implementing the Adapter Pattern
TOC
Shape
TOP
Shape.h
#pragma once
class Shape
{
public:
Shape(void);
void virtual display()= 0;
public:
~Shape(void);
};
Shape.cpp
#include "Shape.h"
Shape::Shape(void)
{
}
Shape::~Shape(void)
{
}
Circle
TOP
Circle.h
#pragma once
#include "Shape.h"
#include "XX_Circle.h"
class Circle : public Shape
{
public:
Circle(XX_Circle *xxCircle);
void display();
public:
~Circle(void);
private:
XX_Circle *myXX_Circle;
};
Circle.cpp
#include "Circle.h"
Circle::Circle(XX_Circle *xxCircle)
{
myXX_Circle = xxCircle;
}
Circle::~Circle(void)
{
delete myXX_Circle;
}
void Circle::display()
{
myXX_Circle->displayIt();
}
XX_Circle
TOP
XX_Circle.h
#pragma once
class XX_Circle
{
public:
XX_Circle(void);
void displayIt();
public:
~XX_Circle(void);
};
XX_Circle.cpp
#include "XX_Circle.h"
XX_Circle::XX_Circle(void)
{
}
XX_Circle::~XX_Circle(void)
{
}