Announcements | Last Post | |
---|---|---|
SoC Curricula | 09/30/2017 01:08PM | |
Demarcation or scoping of examinations and assessment | 02/13/2017 07:59AM | |
School of Computing Short Learning Programmes | 11/24/2014 08:37AM | |
Unisa contact information | 07/28/2011 01:28PM |
Question 5: Abstract factory June 30, 2010 02:33PM |
Registered: 15 years ago Posts: 84 Rating: 0 |
Language: C++class AbstractHandlerFactory { public: virtual QXmlDefautltHandler* newObject(QString aSeperator); virtual ~AbstactFactoy(){} }
Language: C++class XmlHandlerFactory : public AbstractFactory { static XmlHandlerFactory* instance(); virtual QXmlDefautltHandler* newObject(QString aSeperator); }
Language: C++XmlHandlerFactory* XmlHandlerFactory::intance(); { //Whole singleton implementation thing } QXmlDefautltHandler XmlHandlerFactory::newObject(QString aSeprator); { if(aSeperator == "coma") return new ComaHandler(); //Derived from QXmlDefautltHandler if(aSeperator == "tab") return new TabHandler(); //Derived from QXmlDefautltHandler } //Similar to how the textbook did it
Re: Question 5: Abstract factory June 30, 2010 03:08PM |
Registered: 17 years ago Posts: 308 Rating: 0 |
Re: Question 5: Abstract factory June 30, 2010 03:46PM |
Registered: 15 years ago Posts: 84 Rating: 0 |
Re: Question 5: Abstract factory June 30, 2010 04:23PM |
Registered: 15 years ago Posts: 23 Rating: 0 |
andLanguage: C++class GeneralFormatter : public QObject{ Q_OBJECT public: virtual ~GeneralFormatter(){} virtual QString getFormatter()=0;//abstract function }
Language: C++class AbstractFactory { public: /** @arg className - the desired class to instantiate @return a DataObject-derived instance which is "close enough" to handle the properties of className. */ virtual DataObject* newObject (QString className) = 0; virtual ~AbstractFactory() {} };
Language: C++class ObjectFactory : public QObject, public AbstractFactory { Q_OBJECT public: ObjectFactory(){} /** @return a singleton instance */ static ObjectFactory* instance() ; virtual DataObject* newObject(QString className); CDItem* newCDItem(); };
Re: Question 5: Abstract factory June 30, 2010 04:46PM |
Registered: 15 years ago Posts: 84 Rating: 0 |
Re: Question 5: Abstract factory June 30, 2010 04:58PM |
Registered: 17 years ago Posts: 308 Rating: 0 |
Re: Question 5: Abstract factory June 30, 2010 05:40PM |
Registered: 15 years ago Posts: 23 Rating: 0 |
Re: Question 5: Abstract factory June 30, 2010 07:45PM |
Registered: 15 years ago Posts: 23 Rating: 0 |
Language: C++#include "GeneralDelimiter.h" class AbstractFactory : public QObject{ Q_OBJECT public: virtual ~AbstractFactory(){} //reference to GeneralDelimiter strategy virtual GeneralDelimiter* newDelimiter(QString delimiter)=0; };
Re: Question 5: Abstract factory June 30, 2010 08:07PM |
Registered: 15 years ago Posts: 84 Rating: 0 |
Re: Question 5: Abstract factory July 01, 2010 11:15AM |
Registered: 18 years ago Posts: 1,424 Rating: 0 |
Language: C++ (QT)#define qApp QCoreApplication::instance()
Language: C++ (QT)#if defined(qApp) #undef qApp #endif #define qApp (static_cast<QApplication *>(QCoreApplication::instance()))
Re: Question 5: Abstract factory July 01, 2010 12:46PM |
Registered: 17 years ago Posts: 308 Rating: 0 |
Re: Question 5: Abstract factory July 01, 2010 02:19PM |
Registered: 18 years ago Posts: 1,424 Rating: 0 |
Re: Question 5: Abstract factory July 01, 2010 04:47PM |
Registered: 17 years ago Posts: 308 Rating: 0 |