Topics Covered
Remark: topics covered in each lecture are subject to change.
- Wed, Jan 18, 06: header files with .h and without it, functions,
value parameters, reference parameters,
void functions, value-returning functions, short cut operators,
preincrement, postincrement, predecremnet, postdecrement operators,
function prototype (why do we need it and can we get rid of it?), a
value-returning function cannot return more than one value by its return
statement (to
return more than one value, you can do several things such as returning
the values via reference parameters or grouping them in a struct and
returning
it, etc), return statements in void functions, exit statement.
- Fri, Jan 20, 06: scope operator, integral data types, floating
point
data types, global variables and constants, literal constants and named
constants, one-dimensional arrays, initializing one-dimensional arrays in
declaration.
- Mon, Jan 23, 06: whitespace characters, loops, for loop with
missing parts from the header, commas in the header part of the for loop,
for loop with more than one initialization or update action,
one-dimensional arrays as arguments/parameters,
two-dimensional arrays, initializing two-dimensional arrays
in declaration, two-dimensional arrays as arguments/parameters,
structs.
- Wed, Jan 25, 06: valid and invalid operations on structs, structs
as arguments/parameters, functions
returning structs, nested structs, default arguments, overloaded
functions.
- Fri, Jan 27, 06: classes: constructors, const methods,
static members (methods and data).
- Mon, Jan 30, 06: Classes contin, access (get/set) methods,
default constructors, Assignment 1.
- Wed, Feb 1, 06: Assignments 1 and 2.
- Fri, Feb 3, 06: Assignment 2 contin.
- Mon, Feb 6, 06: Assignment 3.
- Wed, Feb 8, 06: const methods, static methods, friend functions.
- Fri, Feb 10, 06: friend classes/structs, user-defined header
files, splitting the program into several parts (header files containing
specification parts of classes, C++ files containing implementation parts
of classes, and a C++ driver program).
- Mon, Feb 13, 06: Review of enumerated types, begin Chapter 3 of
the textbook: unsorted lists (Section 3.2).
- Wed, Feb 15, 06: Finish unsorted lists, sorted Lists (Section
3.3), binary
search.
- Fri, Feb 17, 06: Assignment 4.
- Mon, Feb 20, 06: Quiz, Binary Searh (Section 3.3 - Page 152),
finish sorted lists.
- Wed, Feb 22, 06: Sections 3.4 and 3.5 - Comparison of Algorithms,
Common
Order of
Magnitude (Big O), Objected Oriented Programming
(OOP) and Its Concepts, Section 4.3 - pointers, why pointers? (for dynamic
variables
and arrays, and linked structures; why linked structures? Some operations
cost less).
- Fri, Feb 24, 06: Pointers contin, NULL, two ways to make a pointer
point to something, etc.
- Mon, Feb 27, 06: Pointers to structs, pointers to arrays, arrays
of pointers, arrays of pointers to arrays, heap, new and delete
operators, dynamic variables, dynamic arrays.
- Wed, Mar 1, 06: Pointers to pointers, different implementations
of dynamic multidimensional arrays.
- Fri, Mar 3, 06: Assignment, memory leak, functions returning
pointers
to arrays by
return statements?.
- Mon, Mar 6, 06: Quiz 2, Section 4.1 - Stacks with templates and
with static and dynamic arrays; templates (Section 4.2); typename.
- Wed, Mar 8, 06: Stacks continued; exception handling (pages 34,
95-98).
- Fri, Mar 10, 06: queues (Section 4.5) with templates and with
dynamic arrays
and exception handling.
- Mon, Mar 13, 06: More on exception handling, Section 5.1 - stacks
as linked
structures and with templates and exception handling.
- Wed, Mar 15, 06: ---
- Fri, Mar 17, 06: Exercises on exception handling and on stacks and
queues with arrays.
- Fri, Mar 20, 06: Exam I (Material everything covered except
linked structures).
- Wed, Mar 22, 06: Exercises on linked structures
- Mon, Apr 3, 06: Finish stacks as linked structures (and with templates and exception handling).
- Wed, Apr 5, 06: Section 5.2 - Queues as linked structures and
with
templates and exception handling.
- Fri, Apr 7, 06: Assignment 6.
- Mon, Apr 10, 06: Assignments 6 and 7.
- Wed, Apr 12, 06: Section 5.3 (unsorted linked lists; i.e. Unsorted
lists as linked structures).
- Fri, Apr 14, 06: Finish 5.3; Section 5.4 (sorted linked lists;
i.e. sorted lists as linked structures).
- Wed, Apr 19, 06: Assignment 8, Finish Section 5.4.
- Fri, Apr 21, 06: Begin chapter 6: Sections 6.1 and begin Section
6.2.
- Mon, Apr 24, 06: Finish Section 6.2 and begin Chapter 7.
- Wed, Apr 26, 06: Chapter 7 contin.
- Fri, Apr 28, 06: Exam II (Material: Chapter 5 and Section 6.1 as
presented in the lecture).
- Mon, Apr 1, 06: Recursion continue.
- Wed, Apr 3, 06: Recursive functions for linked lists.
- Fri, Apr 5, 06: Quiz, Recursion continue, remarks.