10 #ifndef EVIL_BASE_DECL_HPP
11 #define EVIL_BASE_DECL_HPP
35 virtual void soundOff(
const T& obj)
const = 0;
39 createEvil(
const std::string& concreteEvilName);
47 #endif // EVIL_BASE_DECL_HPP
static RCP< EvilBase< T > > createEvil(const std::string &concreteEvilName)
The factory in the interface.
virtual void soundOff(const T &obj) const =0
The virtual function.
virtual ~EvilBase()
. Required virtual destructor.
Smart reference counting pointer class for automatic garbage collection.
Evil base class that people often write with a factory function to all of the subclasses in the inter...
Reference-counted pointer class and non-member templated function implementations.