//: C09:Aluminum.h // From Thinking in C++, 2nd Edition // Available at http://www.BruceEckel.com // (c) Bruce Eckel 2000 // Copyright notice in Copyright.txt // The Aluminum class with prototyping #ifndef ALUMINUM_H #define ALUMINUM_H #include "Trash.h" class Aluminum : public Trash { static double val; protected: Aluminum() {} friend class TrashPrototypeInit; public: Aluminum(double wt) : Trash(wt) {} double value() const { return val; } static void value(double newVal) { val = newVal; } std::string id() { return "Aluminum"; } Trash* clone(const Info& info) { return new Aluminum(info.data()); } }; #endif // ALUMINUM_H ///:~