/** * testbuilder.cpp */ #include "builder.h" void main() { /** * Instantiate the builder and director. */ Builder* builder = new ConcreteBuilder(); Director* director = new Director( builder ); /** * Use the director to manipulate the builder, and * get the resulting product. Note the cast. */ director -> construct(); Product* product = ((ConcreteBuilder*) director) -> getResult(); /** * Clean-up. */ delete director; delete builder; };