[Skip Navigation] [CSUSB] / [CNS] / [CSE] / [R J Botting] / [CSci202] / 18
[Text Version] [Syllabus] [Schedule] [Glossary] [Resources] [Grading] [Contact] [Question] [Search ]
Notes: [01] [02] [03] [04] [05] [06] [07] [08] [09] [10] [11] [12] [13] [14] [15] [16] [17] <18> [19] [20]
Labs: [01] [02] [03] [04] [05] [06] [07] [08] [09] [10]
Tue May 31 15:52:17 PDT 2011

# CS202 session 18 -- The STL Containers

## Previous -- Class Hierarchies

[ 17.html ]

## STL Containers

Containers in the STL: vector, list, stack, queue, deque, set, map, multiset, multimap, priority_queue,...

## Preparation -- study the STL

Study Chapter 13 but not sections 13.2 and 13.3, [ stl.html ] and Chapter 20 sections 20.1 through to 20.7 inclusive.

Do Review Questions on the above readings from chapters 13 and 20. Submit one even numbered one at the start of this class.

## Due in -- one Qn+answer

Hand in one even numbered question+answer at the start of class.

## Example of using the STL

Here [ timeSelectionSort.cpp ] is how to use algorithms in the STL <algorithm> library to implement a selection sort and here is what doing it yourself [ timeSelectionSort2.cpp ] looks like.

## Class Work

[ 18q.html ]

## Next - Review Chapter 1 thru 10

[ 19.html ]

Next project due at start of final. Bonus deadline is the start of class 20. Next quiz is the comprehensive final.

# Glossary

1. accessor::=`A Function that accesses information in an object with out changing the object in any visible way". In C++ this is called a "const function". In the UML it is called a query.
2. Algorithm::=A precise description of a series of steps to attain a goal, [ Algorithm ] (Wikipedia).
3. class::="A description of a set of similar objects that have similar data plus the functions needed to manipulate the data".
4. constructor::="A Function in a class that creates new objects in the class".
5. Data_Structure::=A small data base.
6. destructor::=`A Function that is called when an object is destroyed".
7. Function::programming=A selfcontained and named piece of program that knows how to do something.
8. Gnu::="Gnu's Not Unix", a long running open source project that supplies a very popular and free C++ compiler.
9. mutator::="A Function that changes an object".
10. object::="A little bit of knowledge -- some data and some know how". An object is instance of a class.
11. objects::=plural of object.
12. OOP::="Object-Oriented Programming", Current paradigm for programming.
13. Semantics::=Rules determining the meaning of correct statements in a language.
14. SP::="Structured Programming", a previous paradigm for programming.
15. STL::="The standard C++ library of classes and functions" -- also called the "Standard Template Library" because many of the classes and functions will work with any kind of data.
16. Syntax::=The rules determining the correctness and structure of statements in a language, grammar.
17. Q::software="A program I wrote to make software easier to develop",
18. TBA::="To Be Announced", something I should do.
19. TBD::="To Be Done", something you have to do.
20. UML::="Unified Modeling Language".
21. void::C++Keyword="Indicates a function that has no return".