






 |
|
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
- Numeric
- Conversion Operators/Casts
- Scalar, Relational &
Logical
- Pointer and Array
- Reference
- Const Qualified
- 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
- Modular
- File Organization in C++
- 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
- Class Types
- Data Types
- Function Members
- Operator Functions
- Class Members: Public &
Private
- Initialization &
Conversions
- 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
- Aggregate type class
- Abstract data type (ADT) in
conversions (automatic)
- Overloading Operators: Unary
& Binary
- 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
- New class derived from Old
Class
- Public, private, and protected
keywords as access modifiers for class members
- 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++
- C++ as a hybrid language.
- OOP language requirements
- Clients & Manufacturers
- Polymorphic concepts.
- 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
- Classes of storage
- Dynamic Storage Allocation
- 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 |