home *** CD-ROM | disk | FTP | other *** search
- /***************************************************************************\
- ** **
- ** WW WW IIIIIIII NNN NN DDDDDDD BBBBBBB AA SSSSSS EEEEEEEE **
- ** WW W WW II NNNN NN DD DD BB BB AA AA SS EE **
- ** WW W WW II NN NN NN DD DD BBBBBBB AAAAAAAA SSSSSS EEEEEE **
- ** WW W WW II NN NNNN DD DD BB BB AA AA SS EE **
- ** WWWWW IIIIIIII NN NNN DDDDDDD BBBBBBB AA AA SSSSSS EEEEEEEE **
- ** **
- ** SSSSSS OOOOOO FFFFFFFF TTTTTTTT WW WW AA RRRRRRR EEEEEEEE **
- ** SS OO OO FF TT WW W WW AA AA RR RR EE **
- ** SSSSS OO OO FFFFF TT WW W WW AAAAAAAA RRRRRRR EEEEEE **
- ** SS OO OO FF TT WW W WW AA AA RR RR EE **
- ** SSSSSS OOOOOO FF TT WWWWW AA AA RR RR EEEEEEEE **
- ** **
- ********** NOTICE ***********************************************************
- ** This file contains valuable trade secrets and proprietary **
- ** assets of Windbase Software Inc. Embodying substantial **
- ** creative efforts and confidential information. Unauthorized **
- ** use, copying, decompiling, translating, disclosure or **
- ** transfer, of any kind, is strictly prohibited. **
- ** **
- ** COPYRIGHT (C) 1992, 1993, 1994, 1995. Windbase Software Inc. **
- ** ALL RIGHTS RESERVED. **
- \***************************************************************************/
-
- /*
- ** Bag - Templates Version
- */
-
- template <class USRDEF>
- class MyBag : public WBBag<USRDEF>
- {
- int WBCompareFunct(void *nullitem, USRDEF item1, USRDEF item2)
- {
- nullitem = nullitem;
- return(strcmp(item1, item2));
- }
-
- void WBExecuteFunct(void *nullitem, USRDEF item)
- {
- nullitem = nullitem;
- cout << "Execute: " << item << "\n";
- }
-
- void WBDeleteFunct(void *nullitem, USRDEF item)
- {
- nullitem = nullitem;
- cout << "Delete: " << item << "\n";
- }
- };
-
- main()
- {
- MyBag<char *> bag;
-
- bag += "Item0";
- bag += "Item1";
- bag += "Item2";
- bag += "Item3";
- bag += "Item4";
- bag += "Item5";
- bag += "Item6";
- bag += "Item7";
- bag += "Item8";
- bag += "Item9";
-
- cout << "NumItems(): " << bag.NumItems() << "\n";
-
- bag.Execute();
-
- cout << "IsMember: " << bag.IsMember("Item0") << "\n";
- cout << "IsMember: " << bag.IsMember("Item1") << "\n";
- cout << "IsMember: " << bag.IsMember("Item2") << "\n";
- cout << "IsMember: " << bag.IsMember("Item3") << "\n";
- cout << "IsMember: " << bag.IsMember("Item4") << "\n";
- cout << "IsMember: " << bag.IsMember("Item5") << "\n";
- cout << "IsMember: " << bag.IsMember("Item6") << "\n";
- cout << "IsMember: " << bag.IsMember("Item7") << "\n";
- cout << "IsMember: " << bag.IsMember("Item8") << "\n";
- cout << "IsMember: " << bag.IsMember("Item9") << "\n";
-
- bag -= "Item0";
- bag -= "Item1";
- bag -= "Item2";
- bag -= "Item3";
- bag -= "Item4";
-
- cout << "NumItems(): " << bag.NumItems() << "\n";
- bag.Execute();
-
- bag.Clear();
- cout << "NumItems(): " << bag.NumItems() << "\n";
-
- bag.Execute();
-
- return(0);
- }
-