Handy Handouts about C and C++
Guidelines
C Coding Standards for EECS 381 (pdf)
Guidelines for writing quality C code that must be followed for this course.
C++ Coding Standards for EECS 381 (pdf)
Guidelines for writing quality C++ code that must be followed for this course.
Why and How You Should Comment Your Code (pdf)
C Header File Guidelines (pdf)
C++ Header File Guidelines (pdf)
Using "using": How to Use the std Namespace (pdf)
Basic Class Design (pdf)
Handout form of Basic OOP Concepts (pdf)
Library
A Summary of Stream I/O in C (pdf)
C Library functions for character types (pdf)
C Library C-string functions (pdf)
Selected Math Library functions (pdf)
Notes on Basic C++ Stream I/O (pdf)
Using C++ File Streams (pdf)
Formatting Numbers with C++ Output Streams (pdf)
How Inserters Work - an explanation using an example of copy and back_inserter (pdf)
How Adapters & Binders Work - an explanation using an example of for_each, bind1st, and ptr_fun (pdf)
Why std::binary_search of std::list Works, But you Shouldn't Use It! (pdf)
Fill'er Up: Winners and Losers for Filling an Ordered Container.
Compares different ways to fill an ordered STL container an item at a time - some are incredibly slow, others remarkably fast. (pdf)
Using C++11's bind with Containers and Algorithms.
A tutorial on the C++11 bind function template. (pdf)
Using C++11's Lambdas.
A tutorial on the C++11 lambda facility. (pdf)
Heterogenous Lookup in the STL: We Don't Need Probe Objects!
A tutorial on how to search containers without probe object construction. (pdf)
Using C++11's Smart Pointers.
A tutorial on the C++11 smart pointer classess. (pdf)
Using TR1's unordered_set and unordered_map.
A tutorial on the TR1 hash-table containers. (pdf)
Classes
UML Notation Summary (pdf)
A Summary of Operator Overloading (pdf)
Incomplete (forward) Declarations (pdf)
Static (Class-wide) Members (pdf)
Using Pointers to Member Functions (pdf)