Index

 

Symbols

 & (ampersand) AND operator     Day 14
 ^ (caret) exclusive OR operator     Day 14
 ? (question mark),  calling DoFind() method     Day 13
 {} (braces) , alignment in code     Day 19
 | (pipe) OR operator     Day 14
 ~ (tilde) complement operator     Day 14
 

A

 abstract data types     Day 5
 access     Day 1
 AddKey() function     Day 10 | Day 16
 ADT (abstract data types)     Day 1
 Algorithms in C++     Day 4
 aligning braces ({}) in code     Day 19
 ampersand (&) AND operator     Day 14
 AND (&) operator     Day 14
 AnimalFillFunction() function     Day 2
 answers,  chapter quizzes and exercises     Appendix A
 arguments     
 command-line     Day 6
 sorting     Day 6
 sorting linked lists     Day 6
 Array class     Day 18
 Array Class Constructor Template Definition listing     Day 2
 arrays     Day 1
 character arrays ,  MyBlock     Day 11
 history structures     Day 15
 sparse arrays,  creating     Day 10
 templates     Day 2
 unions     Day 11
 asserts     Day 19
 Asserts with Side Effects program     Day 19
 AVL Tree listing     Day 8
 AVL trees     Day 8
 

B

 B-Tree Driver Program listing     Day 10
 B-Tree Implementation listing     Day 11
 B-trees (binary trees)     Day 7 | Day 8 | Day 10
 balanced     Day 8
 disk-based     Day 11
 implementing     Day 10
 iterators     Day 15
 nodes , deleting     Day 10
 pages,  writing to disk     Day 10
 rewriting     Day 7
 balanced binary trees     Day 8
 base 2     Day 14
 base classes     Day 1
 binary operators     Day 1 | Day 19
 Binary Tree listing     Day 7
 Binary Tree of Words listing     Day 8
 binary values (memory)     Day 14
 base 2     Day 14
 bits     Day 14
 K (kilobyte)     Day 14
 machine instructions     Day 14
 BinaryNode class     Day 7
 BinaryNodeWrapper program     Day 8
 bits     Day 14
 bit field program     Day 14
 clearing     Day 14
 fields     Day 14
 flipping     Day 14
 setting     Day 14
 bitwise operators     Day 14
 Booch ,  Grady ,   Object-Oriented Analysis and Design     Day 21
 Bounds Checker program     Day 20
 braces ({}) , alignment in code     Day 1 | Day 19
 branches     Day 21
 break points , debuggers     Day 20
 Btree.cpp listing     Day 12
 BTree.cpp program     Day 15 | Day 16
 Btree.cpp program     Day 13
 Btree.hpp listing     Day 12
 BTree.hpp program     Day 15 | Day 16
 Btree.hpp program     Day 13
 btree.hpp-the B-Tree Header File listing     Day 10
 Command-Line Arguments listing     
 Bubble Sort listing     Day 4
 Bubble Sort program     Day 17
 Bubble Sort with a Print Listing listing     Day 4
 bubble sorts     Day 4
 improving     Day 4
 optimizing     Day 4
 BubbleSort() function     Day 4
 Bubbling Downward listing     Day 4
 buckets , data location     Day 7
 bugs     Day 20
 common     Day 20
 costs     Day 20
 debuggers     Day 20
 design documents,  writing     Day 20
 fence-post errors     Day 20
 integers     Day 20
 references,  returning to local variables     Day 20
 release code , finding     Day 20
 specifications     Day 20
 building databases     Day 11
 

C

 call stacks (exceptions)     Day 18 | Day 20
 calling functions     Day 14
 capitalization in code     Day 19
 caret () exclusive OR operator     Day 14
 case insensitivity, searches     Day 12
 catch blocks,  exceptions     Day 1 | Day 18
 chapter quizzes , answers     Appendix A
 char type, bit fields     Day 14
 character arrays , MyBlock     Day 11
 child nodes,  deleting nodes     Day 7
 Class Hierarchies and Exceptions program     Day 18
 classes     Day 1
 Array     Day 18
 base classes     Day 1
 BinaryNode class     Day 7
 clients     Day 1
 collection classes     Day 10
 declaring     
 DiskManager     Day 11
 Index     Day 11
 Iterator     Day 15
 Page     Day 11
 defining     Day 19
 derived classes     Day 1
 design     Day 5
 encapsulation     Day 1
 friend classes     Day 1
 initializing     Day 11
 interfaces     Day 1
 invariants     Day 19
 list classes     Day 7
 Queue     Day 8
 sparse array classes, creating     Day 10
 storage handling, creating     Day 9
 String class     Day 7
 strings     Day 3
 technical specifications     Day 5
 virutal destructors     Day 19
 writing     Day 1
 xBoundary     Day 18
 Clear() function     Day 3
 clearing bits     Day 14
 CLiDE (command-line directory enhancer)     Day 5
 clients, classes     Day 1
 code     
 braces     Day 1
 bugs     Day 20
 capitalization     Day 19
 comments     Day 1 | Day 19
 extensibility     Day 16
 identifiers     Day 1
 indenting     Day 1
 line length     Day 19
 long lines     Day 1
 maintainable code     Day 16
 notes,  improving     Day 12
 optimizing     Day 17
 readability     Day 19
 reviews     Day 19
 spelling     Day 19
 style guidelines     Day 1
 switch statements     Day 1
 text     Day 1
 see also programming     
 Code Complete ,  Steve McConnel     Day 21
 code reviews     Day 19
 code space     Day 1
 collection classes     Day 10
 collections     Day 5
 command-line arguments , sorting     Day 6
 Command-Line Arguments listing     Day 6
 command-line flags     
 command-line flags     Day 6
 command-line processing     Day 6
 comments     Day 1 | Day 19
 commercial software     Day 21
 compilers     
 const function     Day 19
 exceptions     Day 18
 gotoxy() function     Day 7
 optimization     Day 17
 profiling programs     Day 17
 templates , support     Day 2
 complement (~) operator     Day 14
 complex data structures     Day 7
 list classes     Day 7
 Notes     Day 7
 saving to disk     Day 9
 Strings     Day 7
 trees     Day 7
 CompuServe, C++ forums     Day 21
 Constant and Nonconstant Pointers listing     Day 1
 constants     Day 1
 constructors, placement     Day 19
 containment , inheritance     Day 1
 Count Analysis of Bubble Sort program     Day 17
 Count Analysis of the Improved Bubble Sort program     Day 17
 counting function calls     Day 17
 coverage analysis profiling     Day 17
 Coverage Report program     Day 17
 CPUs (central processing units), registers     Day 1 | Day 14
 Create() function     Day 11
 

D

 data     
 buckets     Day 7
 complex data structures     Day 7
 persistence, object persistence     Day 9
 searches, functional specifications     Day 5
 storage     
 functional specifications     Day 5
 hash tables     Day 7
 streams     Day 1
 trees     Day 7
 types     
 abstract     Day 5
 bit fields     Day 14
 collections     Day 5
 writing from an object     Day 9
 databases     
 adding notes     Day 13
 building     Day 11
 indexes     Day 11
 disk managers     Day 11
 disk-based B-trees     Day 11
 leaf-node items     Day 11
 locking pages     Day 11
 LRU queues     Day 11
 marking for deletion     Day 11
 page capacity     Day 11
 page size     Day 11
 pointers     Day 11
 iterators     Day 15
 statistics     Day 12
 Datafile.cpp program     Day 12 | Day 13 | Day 15 | Day 16
 debuggers     Day 20
 break points     Day 20
 call stacks     Day 20
 defining problems     Day 20
 locating problems     Day 20
 logs     Day 20
 memory     
 checking     Day 20
 examining     Day 20
 symbolic debuggers     Day 20
 TRACE macros     Day 20
 watch points     Day 20
 Declaring a Message, Node,  and Linked List listing     Day 3
 declaring classes     
 DiskManager     Day 11
 Index     Day 11
 Iterator     Day 15
 Page     Day 11
 declaring templates     Day 2
 defining classes     Day 19
 definitions     
 storing     Day 7
 templates     Day 2
 delete keyword, memory     Day 1
 Delete() function     Day 7
 deleting     
 B-tree nodes     Day 10
 index notes     Day 11
 nodes, trees     Day 7
 functional specifications     
 Demonstrating fin and fout listing     Day 9
 Demonstrating Potential Optimization listing     Day 4
 demonstration program,  rWord object     Day 7
 derived classes     Day 1
 design     Day 5
 classes     Day 5
 creating     Day 5
 documents , writing     Day 20
 object-oriented design programming     Day 5
 reviews of code     Day 19
 destructors     
 placement     Day 19
 virutal destructors     Day 19
 dictionaries     Day 10
 disk managers     
 enhancing performance     Day 11
 indexes     Day 11
 disk-based B-trees     Day 11
 DiskManager Implementation program     Day 11
 Display() function     Day 3
 displaying found data     Day 5
 displays     Day 5
 documentation reviews     Day 19
 DoFind() method     Day 13
 DoPrint() function     Day 8
 DoSyn() method     Day 16
 Driver.cpp listing     Day 12 | Day 15
 drivers,  linked lists     Day 3
 dynamic names ,  version control     Day 21
 

E

 Effective C++ , Scott Myers     Day 21
 encapsulation ,  object-oriented programming     Day 1
 enhancements     Day 21
 enhancing disk manager performance     Day 11
 environment variables     Day 6
 errors     Day 20
 exceptions     Day 18
 catch blocks     Day 18
 compilers     Day 18
 hierarchies     Day 18
 multiple exceptions     Day 18
 objects     Day 18
 templates     Day 18
 throwing     Day 18
 try blocks     Day 18
 uses     Day 18
 event-driven programming     Day 5
 exceptions     Day 1 | Day 18
 catch blocks     Day 18
 compilers     Day 18
 hierarchies     Day 18
 multiple exceptions     Day 18
 objects     Day 18
 templates     Day 18
 throwing     Day 18
 try blocks     Day 18
 uses     Day 18
 exclusive OR () operator     Day 14
 exercises , answers     Appendix A
 

F

 false optimizations     Day 17
 fence-post errors, bugs     Day 20
 fields , bit fields     Day 14
 FIFO (first-in-first-out) queues     Day 8
 FIFO Queue Header listing     Day 8
 FIFO-Implementation listing     Day 8
 files     
 branches     Day 21
 intermediary index files, creating     Day 12
 make files     Appendix B
 trunks     Day 21
 filtering     Day 5
 Find() function     Day 11
 FindLeaf() function     Day 16
 FindNote() function     Day 3
 FindObject() function     Day 3 | Day 7
 FindParagraph() function     Day 1
 flags     
 alternatives     Day 6
 command-line     Day 6
 IsLocked     Day 13
 nocreate     Day 11
 synonyms     Day 16
 flipping bits     Day 14
 friend classes     Day 1
 friend functions     Day 1
 Function Count Report program     Day 17
 functional specifications     Day 5
 CLiDE     Day 5
 data searches     Day 5
 functional specifications     
 data storage     Day 5
 help systems     Day 5
 operating systems     Day 5
 user interfaces     Day 5
 functions     
 AddKey()     Day 10
 ADT (abstract data types)     Day 1
 AnimalFillFunction()     Day 2
 BubbleSort()     Day 4
 calling     Day 14
 Clear()     Day 3
 const     Day 19
 Create()     Day 11
 Delete()     Day 7
 Display()     Day 3
 DoFind()     Day 13
 DoPrint()     Day 8
 DoSyn()     Day 16
 Find()     Day 11
 FindLeaf()     Day 16
 FindNote()     Day 3
 FindObject()     Day 3 | Day 7
 FindParagraph()     Day 1
 friend functions     Day 1
 GetBigger()     Day 8
 GetCount()     Day 7
 getenv()     Day 6
 GetLength()     Day 3
 GetNext()     Day 15
 GetNoteNumber()     Day 3
 GetPage()     Day 11
 GetSmaller()     Day 8
 GetStatus()     Day 14
 GetText()     Day 9
 gotoxy()     Day 7
 Insert()     Day 7 | Day 8 | Day 11 | Day 13
 InsertAfter()     Day 3
 InsertLeaf()     Day 11
 InsertNode()     Day 16
 InsertionSort()     Day 4
 InsertLeaf()     Day 10
 InsertNode()     Day 8 | Day 10
 IntFillFunction()     Day 2
 IsEmpty()     Day 3
 Iterate()     Day 3 | Day 7
 LeftRotate()     Day 8
 MyTemplateFunction()     Day 2
 nonmember (global)     Day 1
 Nullify()     Day 10
 operator()     Day 9
 ParseFile()     Day 13
 PrintNode()     Day 8
 PrintTree()     Day 7 | Day 8
 Process()     Day 6
 profiling function count     Day 17
 Push()     Day 10
 QuickSort()     Day 4 | Day 6
 Recount()     Day 10
 Reset()     Day 1
 Save()     Day 11
 Search()     Day 1
 Serialize()     Day 9
 SetgPageNumber     Day 11
 ShowCursor()     Day 1
 ShowMenu()     Day 13
 SomeFunction()     Day 2
 stacks, memory     Day 1
 standard library rand()     Day 4
 static data     Day 1
 strcpy()     Day 1
 StringCompare()     Day 3
 strlen()     Day 1
 Swap()     Day 4 | Day 17
 templates     Day 2
 Write()     Day 9
 WriteToDisk()     Day 9
 

G

 GetBigger() function     Day 8
 GetCount() function     Day 7
 getenv() listing     Day 6
 GetLength() function     Day 3
 GetNext() function     Day 15
 GetNoteNumber() function     Day 3
 GetPage() function     Day 11
 GetSmaller() function     Day 8
 GetStatus() function     Day 14
 GetText() function     Day 9
 Getting Data Out of an Exception Object program     Day 18
 global name space     Day 14
 global variables     Day 1
 gotoxy() function , compiler support     Day 7
 

H-I

 hash tables     Day 7
 hashing algorithms     Day 7
 Hashing the Words in ROBIN listing     Day 7
 heaps (memory)     Day 14
 help systems     Day 5
 hexadecimal values (memory)     Day 14
 history structures     Day 15
 labels     
 identifiers     Day 1 | Day 19
 IDEs (integrated development environments)     Appendix B
 IdxManager.cpp program     Day 16
 Idxmgr.cpp program     Day 12
 IDXMgr.cpp program     Day 13
 IdxMgr.cpp program     Day 15
 Implementation for the New rWord Object program     Day 9
 Implementation of String program     Day 20
 Implementation of the Template Array program     Day 2
 implementing disk-based B-trees     Day 11
 Improving the Bubble Sort program     Day 4
 indenting,  listings     Day 1
 indenting switches     Day 19
 Index Implementation program     Day 10 | Day 11
 Index.cpp program     Day 12 | Day 13 | Day 15 | Day 16
 indexes     Day 11
 disk managers     Day 11
 disk-based B-trees     Day 11
 implementation     Day 11
 interface program     Day 11
 leaf-node items     Day 11
 locking pages     Day 11 | Day 13
 LRU queues     Day 11
 marking for deletion     Day 11
 page capacity     Day 11
 page size     Day 11
 pointers     Day 11
 initializing     Day 19
 myKeys     Day 11
 splitting pages     Day 11
 synonyms     Day 16
 inheritance     Day 1
 ADT (abstract data types)     Day 1
 containment     Day 1
 multiple inheritance     Day 1
 object-oriented programming     Day 1
 private inheritance     Day 1
 initializing     
 classes     Day 11
 order     Day 19
 pointers     Day 19
 Insert() function     Day 7 | Day 8 | Day 11 | Day 13
 InsertAfter() function     Day 3
 Insertion Sort program     Day 4
 insertion sorts     Day 4
 InsertionSort() function     Day 4
 InsertLeaf method     Day 11
 InsertLeaf() function     Day 10
 InsertNode() function     Day 8 | Day 10
 InsertNode() function     Day 16
 Inside Visual C++, David Kruglinski     Day 21
 instances, templates     Day 2
 instruction pointers     Day 1 | Day 14
 int type,  bit fields     Day 14
 integers, bugs     Day 20
 Interface to String Class program     Day 20
 interfaces, classes     Day 1
 Interfaces for a Binary Tree of Words program     Day 8
 intermediary index files, creating     Day 12
 Internet ,  C++ newsgroups     Day 21
 IntFillFunction() function     Day 2
 invariants     Day 19
 IsEmpty() function     Day 3
 IsLocked flag     Day 13
 Iter.cpp program     Day 16
 Iterate() function     Day 3 | Day 7
 Iterator class     Day 15
 Iterator.cpp program     Day 15
 iterators     Day 15
 adding/deleting list items     Day 15
 B-trees     Day 15
 examples     Day 15
 static     Day 15
 K-L     
 K (kilobyte)     Day 14
 keyword template     Day 2
 keywords     Day 1
 kilobyte (K)     Day 14
 Kruglinski,  David,   Inside Visual C++     Day 21
 labels     Day 19
 large programs , writing     
 large programs ,  writing     Day 1
 leaf nodes , trees     Day 7
 deleting     Day 7
 synonyms     Day 16
 leaf-node index items     Day 11
 least recently used (LRU) queues     Day 11
 LeftRotate() function     Day 8
 Liberty, Jesse , Teach Yourself C++ in 21 Days     Day 1
 line length     Day 19
 line-by-line profiling     Day 17
 links     
 lists     Day 3
 command-line arguments , sorting     Day 6
 list classes     Day 7
 listings     
 1.1 (Constant and Nonconstant Pointers)     Day 1
 1.2 (Using References)     Day 1
 2.1 (Template of an Array Class)     Day 2
 2.2 (Array Class Constructor Template Definition)     Day 2
 2.3 (Implementation of the Template Array)     Day 2
 2.4 (Passing Template Objects to and from Function     Day 2
 2.5 (Specializing Template Implementations)     Day 2
 3.1 (Using the String Class Interface)     Day 3
 3.2 (Using String Class Implementation)     Day 3
 3.3 (Using a Driver Program to Exercise the String     Day 3
 3.4 (Declaring a Message, Node,  and Linked List)     Day 3
 3.6 (Using the Driver Program for the Linked List)     Day 3
 3.7 (Using a Parameterized List Class)     Day 3
 4.1 (Using a Selection Sort)     Day 4
 4.2 (Demonstrating Potential Optimization)     Day 4
 4.3 (Using an Insertion Sort)     Day 4
 4.4 (Using a Bubble Sort)     Day 4
 4.5 (Using a Bubble Sort with a Print Listing)     Day 4
 4.6 (Bubbling Downward)     Day 4
 4.7 (Improving the Bubble Sort)     Day 4
 4.8 (Using QuickSort())     Day 4
 4.9 (Sorting Pointers)     Day 4
 4.10 (Using a Parameterized QuickSort)     Day 4
 5.1 (Using the rNote Class)     Day 5
 5.2 (Using the Prelimenary rWord Class)     Day 5
 5.3 (Using rNoteNode)     Day 5
 6.1 (Using Command-Line Arguments)     Day 6
 6.2 (Switching on Command-Line Flags)     Day 6
 6.3 (Using the Name of the File)     Day 6
 6.4 (Sorting the Arguments)     Day 6
 6.5 (Sorting a List of Command-Line Arguments)     Day 6
 6.6 (Sorting the Environment Variables)     Day 6
 6.7 (Using getenv())     Day 6
 6.8 (Using putenv)     Day 6
 7.1 (Using Stdef.hpp To Store Standard Definitions     Day 7
 7.2 (The Sorted Linked List Template)     Day 7
 7.3 (Note.hpp)     Day 7
 7.4 (String.hpp)     Day 7
 7.5 (String.cpp)     Day 7
 7.6 (Testing the Building Blocks)     Day 7
 7.7 (Hashing the Words in ROBIN)     Day 7
 7.8 (Using an rWord Declaration)     Day 7
 7.9 (Using the Driver Program)     Day 7
 7.10 (Another Way to Write a Binary Tree)     Day 7
 7.11 (Using the Driver Program)     Day 7
 listings     
 8.1 (FIFO Queue Header)     Day 8
 8.2 (FIFO-Implementation)     Day 8
 8.3 (Queue Driver Program)     Day 8
 8.4 (Interfaces for a Binary Tree of Words)     Day 8
 8.5 (Implementation of the Binary Tree of Words)     Day 8
 8.6 (Driver Program to Print a Binary Tree of Word     Day 8
 8.7 (Using Regression To Print the Tree)     Day 8
 8.8 (Declaring the AVL Tree)     Day 8
 8.9 (Implementing the AVL Tree)     Day 8
 8.10 (Driver Program for the AVL Tree)     Day 8
 9.1 (Demonstrating fin and fout)     Day 9
 9.2 (Writing Object Contents to Disk)     Day 9
 9.3 (stddef.hpp)     Day 9
 9.4 (String.hpp)     Day 9
 9.5 (String.cpp)     Day 9
 9.6 (Implementation for the New rWord Object)     Day 9
 9.7 (Using the Driver Program for Writing to Disk)     Day 9
 9.8 (The Storable Interface)     Day 9
 9.9 (The Storagable Implementation)     Day 9
 9.10 (The New Interface to rWord)     Day 9
 9.11 (Using the Driver Program)     Day 9
 10.1 (A Modified rWord Header File)     Day 10
 10.2 (The Sparse Array Template)     Day 10
 10.3 (A Driver Program for the Sparse Array)     Day 10
 10.4 (Using stdef.hpp-the Standard Definition File     Day 10
 10.5 (Using btree.hpp-the B-Tree Header File)     Day 10
 10.6 (B-Tree Implementation)     Day 10
 10.7 (Page Implementation)     Day 10
 10.8 (Index Implementation)     Day 10
 10.9 (The B-Tree Driver Program)     Day 10
 11.1. A Disk-Based, B-Tree Interface     Day 11
 11.2. The B-Tree Implementation     Day 11
 11.3. The Page Implementation     Day 11
 11.4. The Index Implementation     Day 11
 11.5. The DiskManager Implementation     Day 11
 11.6. The Driver Program     Day 11
 12.1 (Btree.hpp)     Day 12
 12.2 (Btree.cpp)     Day 12
 12.3 (Datafile.cpp)     Day 12
 12.4 (Idxmgr.cpp)     Day 12
 12.5 (Index.cpp)     Day 12
 12.6 (Page.cpp)     Day 12
 12.7 (WNJFile.cpp)     Day 12
 12.8 (Driver.cpp)     Day 12
 13.1. Btree.hpp     Day 13
 13.2. Btree.cpp     Day 13
 13.3. Datafile.cpp     Day 13
 13.4. IDXMgr.cpp     Day 13
 13.5. Index.cpp     Day 13
 13.6. Page.cpp     Day 13
 13.7. WNJFile.cpp     Day 13
 13.8. R1.cpp     Day 13
 14.1. Using Bit Fields     Day 14
 15.1. BTree.hpp     Day 15
 15.2. BTree.cpp     Day 15
 15.3. Page.cpp     Day 15
 15.4. Iterator.cpp     Day 15
 15.5. Index.cpp     Day 15
 15.6. Datafile.cpp     Day 15
 15.7. IdxMgr.cpp     Day 15
 15.8. WNJFile.cpp     Day 15
 15.9. Driver.cpp     Day 15
 16.1. BTree.hpp     Day 16
 16.2. BTree.cpp     Day 16
 listings     
 16.3. Index.cpp     Day 16
 16.4. Page.cpp     Day 16
 16.5. Datafile.cpp     Day 16
 16.6. IdxManager.cpp     Day 16
 16.7. Iter.cpp     Day 16
 16.8. WNJFile.cpp     Day 16
 16.9. R2.cpp     Day 16
 17.1. Using a Selection Sort     Day 17
 17.2. Function Count Report     Day 17
 17.3. Time Report     Day 17
 17.4. Profiling by Line     Day 17
 17.5. Coverage Report     Day 17
 17.6. Bubble Sort     Day 17
 17.7. Count Analysis of Bubble Sort     Day 17
 17.8. Time Analysis of Bubble Sort     Day 17
 17.9. Time Analysis of Each Line of Bubble Sort     Day 17
 17.10. Optimized Bubble Sort     Day 17
 17.11. Count Analysis of the Improved Bubble Sort     Day 17
 17.12. Timing Analysis     Day 17
 18.1. Raising an Exception     Day 18
 18.2. Multiple Exceptions     Day 18
 18.3. Class Hierarchies and Exceptions     Day 18
 18.4. Getting Data Out of an Exception Object     Day 18
 18.6. Using Exceptions with Templates     Day 18
 19.1. Using Asserts     Day 19
 19.2. Asserts with Side Effects     Day 19
 19.3. Setting Pointers to Zero     Day 19
 20.1 (Interface to String Class)     Day 20
 20.2 (Implementation of String)     Day 20
 20.3 (Driver Program)     Day 20
 braces     Day 1
 indenting     Day 1
 lists     Day 3
 linked     Day 3
 creating     Day 3
 sorting command-line arguments     Day 6
 parameterizing     Day 3
 trees     Day 7
 locking index pages     Day 13
 long lines, code     Day 1
 LRU (least recently used) queues     Day 11
 M (megabyte)     Day 14
 Macintosh, writing for     Day 21
 macros, ASSERT     Day 19
 magazines, referencing     Day 21
 Maguire,  Steve ,  Writing Solid Code     Day 21
 make files     Appendix B
 marking indexes for deletion     Day 11
 masking operations, setting bits     Day 14
 McConnel , Steve, Code Complete     Day 21
 Median of Three rule, QuickSort() function     Day 4
 megabyte (M)     Day 14
 memory     Day 1
 binary values     Day 14
 base 2     Day 14
 bits     Day 14
 K (kilobyte)     Day 14
 machine instructions     Day 14
 code space     Day 1
 CPUs,  registers     Day 14
 debuggers,  examining     Day 20
 debugging     Day 20
 delete keyword     Day 1
 hexadecimal values     Day 14
 new function     Day 1
 objects, saving to disk     Day 9
 organization     Day 14
 pointers     Day 1
 RAM     Day 14
 heaps     Day 14
 stacks     Day 14
 references     Day 1
 registers     Day 1
 stacks     Day 1
 Multiple Exceptions program     Day 18
 periodicals, referencing     
 multiple inheritance     Day 1
 MyBlock character arrray     Day 11
 Myers, Scott ,  Effective C++     Day 21
 MyTemplateFunction() function     Day 2
 Name of the File listing     Day 6
 names     
 declarations, templates     Day 2
 identifiers     Day 19
 spelling and cpitalization     Day 1
 New Interface to rWord program     Day 9
 new keyword, memory     Day 1
 new operator     Day 19
 No Bugs! Delivering Error-Free Code in C and C++,  David Thielen     Day 21
 nocreate flag     Day 11
 nodes, trees     
 deleting     Day 7 | Day 10
 finding     Day 7
 inserting     Day 7
 nonmember (global) functions     Day 1
 Note.hpp listing     Day 7
 notes     Day 7
 code, improving     Day 12
 saving     Day 12
 storage     Day 12
 Nu Mega Technologies, Bounds Checker     Day 20
 NULL,  pointers     Day 1
 Nullify() function     Day 10
 object persistence     Day 9 | Day 10
 Object-Oriented Analysis and Design, Grady Booch     Day 21
 Object-Oriented Modeling and Design     Day 21
 object-oriented programming     Day 1 | Day 4 | Day 5
 arrays     Day 1
 bitwise operators     Day 14
 classes     Day 1
 encapsulation     Day 1
 exceptions     Day 1 | Day 18
 informational references     Day 21
 inheritance     Day 1
 large programs, writing     Day 1
 passing templates     Day 2
 polymorphism     Day 1
 saving to disk     Day 9
 sorting     Day 4
 writing data from objects     Day 9
 operator() function     Day 9
 operators     
 binary     Day 19
 binary operators     Day 1
 new     Day 19
 overloading     Day 1
 unary     Day 19
 operatying systems, functional specificactions     Day 5
 Optimized Bubble Sort program     Day 17
 optimizing programs     Day 17
 bubble sorts     Day 4
 false optimizations     Day 17
 profiling     Day 17
 by line     Day 17
 by time     Day 17
 coverage analysis     Day 17
 function count     Day 17
 sorts     Day 4
 OR (|) operator     Day 14
 overloading operators     Day 1
 Page Implementation program     Day 10 | Day 11
 Page.cpp program     Day 12 | Day 13 | Day 15 | Day 16
 pages, B-trees ,  writing to disk     Day 10
 Parameterized List Class program     Day 3
 parameterizing     Day 2
 lists     Day 3
 sorts     Day 4
 ParseFile() method     Day 13
 Passing by Reference and Using Virtual Function in Exceptions program,     Day 18
 Passing Template Objects to and from Function program     Day 2
 periodicals, referencing     Day 21
 persistence     
 persistence     
 object persistence     Day 10
 object versus data     Day 9
 Petzold,  Charles,  Programming Windows 3.1 , Third Edition     Day 21
 PIM (Personal Information Manager)     Day 1 | Day 5
 pipe (|) OR operator     Day 14
 pointers     Day 11
 initializing     Day 19
 memory     Day 1
 myKeys     Day 11
 NULL     Day 1
 sorting     Day 4
 polymorphism     Day 1
 print listings, bubble sorts     Day 4
 printing     
 Queue classes     Day 8
 recursion     Day 8
 trees     Day 8
 PrintNode() function     Day 8
 PrintTree() function     Day 7 | Day 8
 private inheritance     Day 1
 private labels     Day 19
 Process() function     Day 6
 profiling     Day 17
 by line     Day 17
 by time     Day 17
 coverage analysis     Day 17
 function count     Day 17
 Profiling by Line program     Day 17
 programming     
 access     Day 1
 bugs     Day 20
 comments     Day 1
 constants     Day 1
 529-530     
 comments     Day 19
 guidelines     Day 1
 identifiers     Day 19
 line length     Day 19
 readibility in code     Day 19
 spelling     Day 19
 switches     Day 19
 technical specifications     Day 5
 text     Day 1
 variables     Day 1
 version control     Day 21
 see also code     
 Programming Windows 3.1, Third Edition,  Charles Petzold     Day 21
 programs     
 optimizing     Day 17
 false optimizations     Day 17
 profiling     Day 17
 by time     Day 17
 coverage analysis     Day 17
 function count     Day 17
 qualities     
 extensibility     Day 19
 maintainability     Day 19
 robustness     Day 19
 testing     Day 13 | Day 19
 initializing pointers     Day 19
 new operator return value     Day 19
 protected labels     Day 19
 prototypes, creating     Day 5
 public labels     Day 19
 Push() function     Day 10
 putenv listing     Day 6
 data searches     Day 5
 data types, abstract     Day 5
 databases, management     Day 5
 design     Day 5
 enhancements     Day 21
 event-driven     Day 5
 functional specifications     Day 5
 guidelines     Day 19
 initial attempts     Day 5
 managing more than one programmer     Day 21
 object-oriented     Day 1 | Day 4 | Day 5
 arrays     Day 1
 classes     Day 1
 encapsulation     Day 1
 exceptions     Day 1
 informational references     Day 21
 inheritance     Day 1
 large programs     Day 1
 polymorphism     Day 1
 saving objects to disk     Day 9
 writing data from objects     Day 9
 prototypes     Day 5
 specifications     Day 5 | Day 20
 starting     Day 5
 style     Day 19
 aligning braces ({}) in code     Day 19
 capitalization     Day 19
 class definitions     
 Sorting A list of Command-Line Arguments listing     
 

Q-R

 question mark (?), calling DoFind() method     Day 13
 Queue Driver Program listing     Day 8
 queues, FIFO (First-in-First-out)     Day 8
 QuickSort() function     Day 4 | Day 6
 limitations     Day 4
 parameterizing sorts     Day 4
 sorting pointers     Day 4
 quizzes, answers     Appendix A
 R1.cpp program     Day 13
 R2.cpp program     Day 16
 Raising an Exception program     Day 18
 RAM (Random-Access Memory)     Day 14
 heaps     Day 14
 stacks     Day 14
 RCS (revision control system)     Day 21
 branches     Day 21
 trunks     Day 21
 recompiling programs     Appendix B
 records     
 data     Day 12
 length     Day 12
 Recount() function     Day 10
 recursion, printing     Day 8
 references     Day 1 | Day 19
 memory aliases     Day 1
 returning to local variables     Day 20
 References program     Day 1
 registers     Day 1 | Day 14
 Regression To Print the Tree program     Day 8
 release branches     Day 21
 Reset() function     Day 1
 reviewing code     
 code reviews     Day 19
 design reviews     Day 19
 documentation reviews     Day 19
 rewriting binary trees     Day 7
 rNote Class program     Day 5
 rNoteNode program     Day 5
 rNotes database     Day 11
 ROBIN     Day 1
 databases, building     Day 11
 displaying results     Day 13
 functional specification     Day 5
 indexes     
 disk-based B-trees     Day 11
 locking pages     Day 11 | Day 13
 LRU queues     Day 11
 page capacity     Day 11
 page size     Day 11
 management     Day 5
 synonyms     Day 16
 root node, trees     Day 7
 rWord Class program     Day 5
 rWord Declaration program     Day 7
 rWord Header File program     Day 10
 rWord object , demonstration program     Day 7
 rWord objects, creating     Day 7
 

S

 Save() function     Day 11
 saving     
 notes     Day 12
 objects to disk     Day 9
 Search() function     Day 1
 searches     
 case insensitivity     Day 12
 data     Day 5
 data types     Day 5
 displaying found data     Day 5
 synonyms     Day 16
 Selection Sort program     Day 4 | Day 17
 selection sorts     Day 4
 Serialize() function     Day 9
 SetgPageNumber() function     Day 11
 sets, collection classes     Day 10
 setting bits     Day 14
 Setting Pointers to Zero program     Day 19
 Shammas, Namir, Teach Yourself Visual C++ in 21 Days     Day 21
 shareware     Day 21
 Shareware Products Association     Day 21
 ShowCursor() function     Day 1
 ShowMenu() method     Day 13
 SomeFunction() function     Day 2
 Sorted Linked List Template program     Day 7
 Sorting a List of Command-Line Arguments listing     Day 6
 Sorting the Arguments listing     
 Sorting the Arguments listing     Day 6
 Sorting the Environment Variables listing     Day 6
 sorts     Day 4 | Day 5
 arguments, command-line     Day 6
 bubble sorts     Day 4
 environment variables     Day 6
 insertion sorts     Day 4
 parameterizing     Day 4
 pointers     Day 4
 QuickSort() function     Day 4
 selection sorts     Day 4
 swaps     Day 4
 sparse array classes, creating     Day 10
 Sparse Array Template program     Day 10
 Specializing Template Implementations program     Day 2
 specifications     Day 20
 functional specifications     Day 5
 data searches     Day 5
 data storage     Day 5
 help systems     Day 5
 operating systems     Day 5
 user interfaces     Day 5
 programming     Day 5
 technical specifications     Day 5
 spelling in code     Day 19
 splitting pages (indexes)     Day 11
 stacks (memory)     Day 1 | Day 14
 standard library rand() function     Day 4
 starting programming     Day 5
 static data     Day 1
 static iterators     Day 15
 statistics, databases     Day 12
 stddef.hpp program     Day 9
 Stdef.hpp To Store Standard Definitions program     Day 7
 stdef.hpp-the Standard Definition File program     Day 10
 Storable Interface program     Day 9
 Storagable Implementation program     Day 9
 storage     Day 9
 classes, creating     Day 9
 definitions     Day 7
 hash tables     Day 7
 notes     Day 12
 objects to disk     Day 9
 strcpy() function     Day 1
 streams     Day 1
 String Class Implementation program     Day 3
 String Class Interface program     Day 3
 String.cpp listing     Day 7 | Day 9
 StringCompare() function     Day 3
 strings     Day 3 | Day 7
 strlen() function     Day 1
 structures     Day 1 | Day 10
 style guidelines, large programs     Day 1
 suffixes, make files     Appendix B
 Swap() function     Day 4 | Day 17
 swaps     Day 4 | Day 11
 switch statements     Day 1 | Day 19
 symbolic debuggers     Day 20
 synonyms     Day 16
 

T

 technical specifications     Day 5
 Template of an Array Class listing     Day 2
 templates     Day 2
 array objects     Day 2
 classes     Day 2
 compilers, support     Day 2
 declarations     Day 2
 definitions     Day 2
 exceptions     Day 18
 functions     Day 2
 implementing     Day 2
 instances     Day 2
 keyword template     Day 2
 objects, passing     Day 2
 parameterized types     Day 2
 testing programs     Day 13 | Day 19
 initializing pointers     Day 19
 new operator return value     Day 19
 Testing the Building Blocks listing     Day 7
 text     
 codes     Day 1
 strings     Day 3
 thelter static iterator     Day 15
 Thielen , David, No Bugs! Delivering Error-Free Code in C and C++     Day 21
 throwing exceptions     Day 18
 Ziffnet C++ forums     
 tilde (~) complement operator     Day 14
 Time Analysis of Bubble Sort program     Day 17
 Time Analysis of Each Line of Bubble Sort program     Day 17
 Time Report program     Day 17
 Timing Analysis pro- gram     Day 17
 TRACE macros     Day 20
 trees     Day 7
 B-trees     Day 7 | Day 10
 nodes     
 deleting     Day 7
 finding     Day 7
 inserting     Day 7
 printing     Day 8
 structures     Day 10
 trunks     Day 21
 try blocks     Day 18
 

U-V

 unary operators     Day 19
 unary operators, code text     Day 1
 unions (arrays)     Day 11
 user interfaces, functional specifications     Day 5
 Using Asserts program     Day 19
 Using Exceptions with Templates program     Day 18
 variables     Day 1
 environment variables     Day 6
 global     Day 1
 make files     Appendix B
 version control     Day 21
 branches     Day 21
 dynamic names     Day 21
 managing more than one programmer     Day 21
 trunks     Day 21
 virutal destructors     Day 19
 

W-Z

 watch points, debuggers     Day 20
 white space, code text     Day 1
 wild cards, searches     Day 5
 Windows, writing for     Day 21
 WNJ (Word-Node-Join) record     Day 16
 WNJFile.cpp program     Day 12 | Day 13 | Day 15 | Day 16
 Word-Node-Join (WNJ) record     Day 16
 Write() function     Day 9
 WriteToDisk() function     Day 9
 writing     Day 5
 AVL trees     Day 8
 binary trees, rewriting     Day 7
 classes     Day 1
 data from an object     Day 9
 design documents     Day 20
 large programs     Day 1
 Macintosh     Day 21
 Windows     Day 21
 Writing Object Contents to Disk listing     Day 9
 Writing Solid Code, Steve Maguire     Day 21
 xBoundary class     Day 18
 Ziffnet C++ forums     Day 21

Go to: Table of Contents