CSE687 - Object Oriented Design

Lecture #18 - iostreams and Exceptions

Web Resources:

Stroustrup's Home Page, Stroustrup's C++0x FAQ, Assoc. of C/C++ Users, C++ at Microsoft, Code Project, Sells Brothers, Guru of the Week, CPlusPlus.com, CProgramming.com, Dr. Dobb's Journal, Boost Library

Content:

This lecture covers iostreams, an object oriented implementation of a library supporting program input and output.
  1. Syllabus
    Describes topics to be covered, reading material for you to digest before coming to class, and due dates for the assigned projects.
  2. Projects:

  3. Executable Specifications
    This is a presentation related to a project that was part of an earlier semester. You may find it worth looking over.
  4. C++ Exceptions:
  5. C++ Streams Libraries:
    iostreams presentation
    This presentation discusses the iostream hierarchy and the role of each of many of its classes.

    iostreams reference
    The reference presents class relationships and interface details.

    iostreams code examples
    Illustrates stream formatting, buffering, opening for reading and writing, and use of stringstreams.

    Stream Iterators
    A short example demonstrating input and output stream iterators.

  6. Thinking about Software Design:

    Software Design
    Broad survey of ideas with examples
    Design Presentation
    Summarizes design issues for modules and classes.
    Design Guidelines
    Design rules and idioms that transcend Object Oriented Design.

    Design Summary