|
Jun 16, 2024
|
|
|
|
ITCS 2550 - C++ Programming 2 Credits: 3.00 (3 contact hrs) ITCS-2550 provides students with a continuing study of C++ object-orientated programming language. Students learn additional concepts of operator overloading, multiple public and private inheritance, C++ pointers, files and streams, virtual functions, linked lists, and basic C++ CLASS libraries. Additional CLASS libraries will be used as required. Primarily, the course emphasizes object-orientated concepts and design. Students code programs involving objects, classes, multiple inheritance, new data types, C++ pointers, and file I/O. Students implement all programs and/or examples on microcomputers.
Pre & Co Requisite(s):
Prerequisite: ITCS-2530 OUTCOMES AND OBJECTIVES Outcome 1: Upon completion of this course, students will create program(s) using IFSTREAM, OFSTREAM, and FSTREAM classes which utilize file processing and error checking.
Objectives:
- Review
- Explain the basic structure of C++ programs.
- Use decisions and loops in programs.
- Use structures, classes and arrays in programs.
- File I/O
- Identify members of the IOS and FSTREAM classes.
- Develop program(s) that utilize stream class member functions to perform error checking.
- Develop programs using char, string, and object I/O.
- Explain the difference between Binary and Character files.
Outcome 2: Upon completion of this course, students will develop program(s) using intuitive class objects with overloaded operator member functions.
Objectives:
- Multiple file program
- Organize C++ program using multiple source files and header files.
- Explain variable scope as it applies to multiple files program.
- Operator overloading
- Create program(s) that use overloading of Unary and Binary operators.
- Overload >> and < operators with the use of FRIEND functions.
- Explain the purpose of NAMELESS TEMPORARY objects.
Outcome 3: Upon completion of this course, students will create program(s) using inheritance, polymorphism, dynamic memory allocation and template classes.
Objectives:
- Inheritance
- Explain the reason for inheritance and multiple inheritances.
- Create base and derived classes.
- Utilize PRIVATE, PUBLIC, and PROTECTED keywords to achieve proper member access control.
- Pointer and dynamic memory allocation
- Demonstrate the use of pointers as compared to address of operator &.
- Create program(s) that dynamically allocate memory space using NEW and manipulate the data through pointers.
- Create program(s) that clean up itself using DELETE operator in destructor.
- Explain data conversion between basic data types and objects.
- Polymorphism and template classes
- Explain polymorphism and its significance in O.O. programming.
- Explain the purpose of virtual function and abstract class.
- Develop program(s) using array of inhomogeneous objects and manipulate the objects using pointers.
- Understand C++ Template classes.
- Create program(s) that utilize template class Vector or List.
COMMON DEGREE OUTCOMES (Bulleted outcomes apply to the course)
- 1. The graduate can integrate the knowledge and technological skills necessary to be a successful learner.
|
- 2. The graduate can demonstrate how to think competently.
|
- 3. The graduate can demonstrate how to employ mathematical knowledge.
|
- 4. The graduate can demonstrate how to communicate competently.
|
- The graduate is sensitive to issues relating to a diverse, global society.
|
COURSE CONTENT OUTLINE
- Review - Programming Basics/Loops and Decisions
- Review - Structures and Functions
- Review - Classes and Arrays
- Review - Streams
- Operator Overloading
- Inheritance
- Pointers and Dynamic Data Allocation
- Virtual Functions, Abstract Classes, and Polymorphism
- Templates and Exceptions
- Object-Oriented Design
Primary Faculty Zhuang, Yi-Li Secondary Faculty Schleis, George Associate Dean Johnson, Elise
Official Course Syllabus - Macomb Community College, 14500 E 12 Mile Road, Warren, MI 48088
Add to Favorites (opens a new window)
|
|