An overview of the language is provided
which includes a brief history of the development of the language, a
specification of its capabilities and strengths, and its importance in current
applications and systems development. The following major topics are covered in
the curriculum:
Using the Microsoft Visual C++ Compiler,
the basic elements and components of a C++ program, keyboard input, displaying
information to the screen using the cin and the cout objects, the creation and
use of variables, basic math operations, logical operators, conditional
branching, the creation and implementation of loops, the design and creation of
functions, polymorphism, overloaded functions and operators, reference
variables, single and multi-dimensional arrays, character strings, data
structures, pointers, dynamic memory allocation, defining and implementing
classes, member data and member functions, the distinction between public and
private members, constructor and destructor functions, static functions and
data members, basic inheritance, multiple inheritance, and using function
templates.
Upon successful completion of this module,
students will be able to demonstrate the following skills by being able to:
Identify and apply the basic elements of
C++ programs in creating software applications.
Master and apply the concepts of object
oriented analysis and design.
When given a problem statement, heuristic
or algorithm, identify the basic functional units required, i.e., classes,
member variables, and member functions.
Design and implement all of the classes and
objects needed to meet a program’s specifications.
Apply all of the fundamental methods of
controlling the flow of a program including all forms of conditional branching
and all variations of loops.
Design programs that optimize memory use through
such mechanisms as pointers and dynamic memory allocation.
Implement data file input/output processing
capability in the development of software applications.
Maximize code reuse through careful design
and implementation of classes and the inheritance of those classes.
Create robust software that will handle exceptions and errors efficiently.