hor_line.gif (55 bytes)Industrial
Manufacturing

Electronic
C O M P U T E R
Mechanical


ELECTRONIC
The University of Dayton
THE DEPARTMENT OF TECHNOLOGY
HISTORY
FACULTY
FACILITIES
COURSES OF STUDY
STUDENT ORGANIZATION
ALUMNI
CONTACT US

HOME

Course Syllabus

EET 470: Programming in C++

Credit Hours: 3 sem hrs.

Text: C++ How to Program, Deitel/Deitel, Prentice-Hall, 1994
Inside Visual C++, Second ed., Kruglinski, Microsoft Press, 1994

Suppl. text: Microsoft Visual C++ Programmer's Reference, Microsoft Corp.
Microsoft Visual C++ User's Guide, Microsoft Corp.

Software: Microsoft Visual C++

Prerequisites: EET 357,EET 361

Instructor: Prof. George Coures

Date Prepared: Spring 1996

Objectives:

  • To introduce the concept of Object-Oriented Programming (OOP) as a model of building programs as a collection of abstract data types.
  • How to design and implement programs using C++
  • To identify the data types that represent objects in the solution of a problem.
  • To encourage the student to think, both critically and flexibly, about problems in program design and implementation.
  • How to recognize a function in it's polyorphic (multi-form) state.

Topical Outline

Weeks 1 & 2: C++ Type System

  1. Numeric
  2. Conversion Operators/Casts
  3. Scalar, Relational & Logical
  4. Pointer and Array
  5. Reference
  6. Const Qualified
  7. User-defined
  • C++ Introductory program
  • Keywords supported in C++ and carried over from C.
  • Order of precedence and associattivity of symbols.
  • Assign appropriate computer programs and exercises
  • Students should have sufficient background in C to minimize review.
  • Review and summarize material.
  • History and background of C++

Weeks 3 & 4: Functions

  1. Modular
  2. File Organization in C++
  3. Overloading & Inline
  • Short review in function, theory will probably be necessary.
  • Emphasis on those functions that are supported only in C++
  • The prototype function from C is carried over to C++
  • Assign appropriate programs & exercises
  • Review & summarize

Weeks 5 & 6: Classes

  1. Class Types
  2. Data Types
  3. Function Members
  4. Operator Functions
  5. Class Members: Public & Private
  6. Initialization & Conversions
  7. Pointers to Class Members
  • Because C++ supports a three-fold number of classes as in C; an additional half-week may be necessary. Some are complex requiring additional time.
  • Assign appropriate programs & exercises
  • Review & summarize
  • Example programs should be utilized when covering: template, vector, hierarchy, handler, public & private classes
  • Theory of pointers should be reviewed

Weeks 7 & 8: Data Abstraction

  1. Aggregate type class
  2. Abstract data type (ADT) in conversions (automatic)
  3. Overloading Operators: Unary & Binary
  4. ADT has no equivalent type in C
  • Class types are used to implement ADT
  • The keyword from C; (struct should be reviewed, since it is an extension of class concept)
  • Overloading refers only to C++
  • Unary & binary are carried over to C++ from C.
  • Appropriate programs, exercises, review & summarize

Weeks 9 & 10: Inheritance

  1. New class derived from Old Class
  2. Public, private, and protected keywords as access modifiers for class members
  3. Multiple inheritance
  • Exclusive C++ mechanism
  • Subtypes of its base class
  • Constructors & de-structors should be reviewed
  • Pointers to class members vs. pointers to class
  • To derive one class from multiple base classes
  • Syntax of class headers must be modified
  • Appropriate programs, exercises
  • Review & summarize

Week 11: OOP Using C++

  1. C++ as a hybrid language.
  2. OOP language requirements
  3. Clients & Manufacturers
  4. Polymorphic concepts.
  5. OOP design methodology
  • Briefly refer to the PL/I language as a hybrid language
  • Emphasis on inheritance, type extensibility, data hiding, polymorphism
  • OOP = type extensibility + polymorphism
  • Appropriate programs, exercises
  • Summarize & review
  • No program assignment

Weeks 12 &13: Storage Management

  1. Classes of storage
  2. Dynamic Storage Allocation
  3. Free Store Operators

Briefly review storage classes from C: auto, Extern, Register, & Static

  • New & Delete/Constructor & Destructor/Union/Static
  • Appropriate programs, exercises
  • Summarize & review

Last Revised: September 1, 1996