Пример #1
0
int main()
{
  std::cout << "Builder GoF Kata" << std::endl;

  MessageBuilder messageBuilder;
  std::vector<std::string> result;
  MessageAssembler* messageAssembler = NULL;

  messageAssembler = new XmlMessageAssembler();
  result = messageBuilder.buildMessage(messageAssembler);
  std::copy(result.begin(), result.end(), std::ostream_iterator<std::string>(std::cout, "\n")); // love it or hate!
  delete messageAssembler; messageAssembler = NULL;

  std::cout << std::endl;

  messageAssembler = new TxtMessageAssembler();
  result = messageBuilder.buildMessage(messageAssembler);
  std::copy(result.begin(), result.end(), std::ostream_iterator<std::string>(std::cout, "\n")); // love it or hate!
  delete messageAssembler; messageAssembler = NULL;
}