//----------------------------------------------------------------------------- // name: X.h // desc: basic class and inheritance example // // Music 256a, Fall 2009, Stanford University // http://ccrma.stanford.edu/courses/256a-fall-2009/ // // compile: // g++ -o X X.cpp // run: // ./X //----------------------------------------------------------------------------- #ifndef __X_H__ #define __X_H__ #include using namespace std; // class Foo class Foo { public: // accessible by anyone // constructor Foo(); // destructor virtual ~Foo(); // say hello virtual void sayHello(); void sayHello( int num ); // public var int m_publicVar; protected: int m_protectedVar; private: int m_privateVar; public: // get an instance of Foo static Foo * getInstance(); // a public static int static int ourStaticVar; private: static Foo * ourFoo; }; // a FooBar is a Foo class FooBar : public Foo { public: FooBar(); public: virtual void sayHello(); }; #endif