ITCS 2550 - C++ Programming 2
Credit Hours: 3.00
Prerequisites: ITCS 2530
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.
Billable Contact Hours: 3
Search for Sections
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.
- 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.
- 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.
- 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 (CDO)
• Communication: The graduate can communicate effectively for the intended purpose and audience.
• Critical Thinking: The graduate can make informed decisions after analyzing information or evidence related to the issue.
• Global Literacy: The graduate can analyze human behavior or experiences through cultural, social, political, or economic perspectives.
• Information Literacy: The graduate can responsibly use information gathered from a variety of formats in order to complete a task.
• Quantitative Reasoning: The graduate can apply quantitative methods or evidence to solve problems or make judgments.
• Scientific Literacy: The graduate can produce or interpret scientific information presented in a variety of formats.
CDO marked YES apply to this course:
Critical Thinking: YES
Information Literacy: YES
Quantitative Reasoning: YES
Scientific Literacy: YES
COURSE CONTENT OUTLINE
- Review - Programming Basics/Loops and Decisions
- Review - Structures and Functions
- Review - Classes and Arrays
- Review - Streams
- Operator Overloading
- Pointers and Dynamic Data Allocation
- Virtual Functions, Abstract Classes, and Polymorphism
- Templates and Exceptions
- Object-Oriented Design
Official Course Syllabus - Macomb Community College, 14500 E 12 Mile Road, Warren, MI 48088
Add to Favorites (opens a new window)