// // C++ test of a dll which contains a C++ class. // #include #include // Interface of class. #include "silly.h" #ifdef DERIVED_TEST // Here is a derived class too. class CMoreSilly : public CSilly { public: CMoreSilly (char* szNewName) : CSilly (szNewName) {}; ~CMoreSilly (); WhatsYourName(); }; CMoreSilly:: ~CMoreSilly () { printf ("In CMoreSilly \"%s\" destructor!\n", szName); } CMoreSilly:: WhatsYourName () { printf ("I'm more silly and my name is \"%s\"\n", szName); } #endif int main () { CSilly* psilly = new CSilly("silly"); psilly->WhatsYourName(); psilly->Poke(); // Poke him, he should say "Ouch!" psilly->Stab(4); // Stab him four times he should say "Ugh!!!!" delete psilly; #ifdef DERIVED_TEST psilly = new CMoreSilly("more silly"); psilly->WhatsYourName(); psilly->Stab(5); delete psilly; #endif return 0; }