C++ Introduction

32 Hours / 180 Days / Mentor Supported

Course Overview:

Students will receive a thorough introduction to the basic syntax and structure of the C++ programming language. Students will create C++ applications that define variables and arrays and that use if statements, switch/case statements, for loops and while loops. Students will create functions and pass information into functions by value and by reference using pointers. Students will build applications made up of several files. This course is a good introduction for those that have never programmed before. Students will need access to a C++ compiler. There are compilers available for download.

IMPORTANT: Since Visual Studio for Mac no longer supports C++, this course is only suitable for students that have a Windows-based computer or virtual machine available to them.

Students will:
  • Compile and run a basic C++ program.
  • Write C++ code that uses numeric and string data in variables.
  • Illustrate the knowledge of variables, types, values, definition, and objects
  • Write C++ code that uses common operator
  • Write C++ code that uses your own functions and header files
  • Write C++ applications that use your own classes
  • Write C++ code that uses arrays, matrices, and lists
  • Write C++ applications that use pointers to containers and variables
  • Write C++ application that use conditional statement and loops.
  • Write C++ code that handles exceptions and validates data.

Course Mentor:

Rita Harwell was born and raised in Fort Worth, Texas.  She received her Bachelor’s degree from the University of North Texas, and a Master’s degree from the University of Missouri, Columbia, Missouri.  In addition, she studied Computer Science at North Carolina State University.  Ms. Harwell has taught computer programming at Wake Technical Community College for 14 years.  She developed a passion for database programming and programmed in Visual Basic, Perl, C#, and C++ primarily developing medical software.

Course Outline:

Lesson 1: Getting Started

This lesson will give you a chance to get Visual Studio ready to begin programming and give you a chance to get familiar with the development environment.

Lesson 2: Objects, Types, and Values

This lesson introduces the basics of storing and using data in a program.

Lesson 3: Computation and Basic Logic Structures

This lesson introduces the basics of computation.

Lesson 4: Error Handling

This lesson introduces the basics of errors and error handling. After completing this lesson you should be able to illustrate the identification and handling errors

Lesson 5: Writing a Program

This lesson introduces the basics of writing a simple program. This includes gradually refining your ideas of what you want to do and how you want to express it. This includes developing a program from a first vague idea through stages of analysis, design, implementation, testing, redesign, and re-implementation.

Lesson 6: Completing a Program

This lesson introduces the basics of completing a simple program. This includes making the program fit for users and maintainers. This involves improving the user interface, doing improving error handling, adding a useful features, and restructuring the code for ease of understanding and modification.

Lesson 7: Technicalities: Working with Functions, Classes, Structures, and Headers

This lesson illustrates more advanced features in working with headers, functions, classes, and structures. This includes passing data to a function by reference, calling a function with different numbers and types of parameters (operator overloading), creating header files, and building interfaces to classes.

Lesson 8: Input and Output Streams

This lesson presents the C++ standard library facilities for handling input and output from a variety of sources: I/O streams. Show how to read and write files, how to deal with errors, how to deal with formatted input, and how to provide and use I/O operators for user-defined types. How to read and write individual values, and how to open, read, and write whole files. How to adapt the general iostream framework to specific needs and tastes.

Lesson 9: Vectors, Arrays, and Pointers

This lesson describes the containers and algorithms part of the C++ standard library, traditionally called the STL. This includes the design and implementation of the most common and most useful STL container: vector. It describes how vectors are copied and accessed through subscripting. This include learning about copying in general and consider vector’s relation to the lower-level notion of arrays. Also learned is the arrays’ relation to pointers and the problems arising from their use. You also learn the five essential operations that must be considered for every type: construction, default construction, copy construction, copy assignment, and destruction.

Lesson 10: Text Manipulation

This lesson covers learning about extracting information from text. You review the standard library facilities most used in text processing: strings, iostreams, and maps. You are introduced to regular expressions (regexs) as a way of expressing patterns in text. You learn how to use regular expressions to find and extract specific data elements, such as ZIP codes (postal codes), from text and to verify the format of text files.

Lesson 11: Numerics, Arrays, and Iteration

This lesson continues the study of the STL, the containers and algorithms part of the C++ standard library. You learn the general ideals and the fundamental concepts. These concepts include iteration, linked-list manipulation, and STL containers. You learn of some fundamental language and library facilities supporting numeric computation. You learn to handle the basic problems of size, precision, and truncation. The concepts of multidimensional arrays — both C-style and an N-dimensional matrix library are presented. You are introduced to random numbers. The standard mathematical functions are introduced and a basic introduction to the standard library functions for complex numbers.

All necessary materials are included.


System Requirements:

System Requirements:

Internet Connectivity Requirements:
  • Cable and DSL internet connections are recommended for the best experience.
Hardware Requirements:
  • CPU: 1 GHz or higher
  • RAM: 2 GB or higher
  • Resolution: 1280 x 720 or higher
  • Speakers / Headphones
  • Microphone (Webinar / Live Online sessions)
Operating System Requirements:
  • Microsoft Windows 7 or 10 (Home, Pro)
  • Mac OSX 10 or higher.
  • Latest Chrome OS
  • Latest Linux Distributions

NOTE: While we understand that our courses can be viewed on Android and iPhone devices, we do not recommend the use of these devices for our courses. The size of these devices do not provide a good learning environment for students taking online or live online based courses.

Web Browser Requirements:
  • Latest Google Chrome is recommended for the best experience.
  • Latest Mozilla FireFox
  • Latest Microsoft Edge
  • Latest Apple Safari
Basic Software Requirements (These are recommendations of software to use):
  • Office suite software (Microsoft Office, OpenOffice, or LibreOffice)
  • PDF reader program (Adobe Reader, FoxIt)
  • Courses may require other software that is denoted in the above course outline.