Course in C++ Skill Tree

C++ Programming for Beginners

This course is designed for complete beginners to C++ programming. You will learn the fundamentals of C++, including data types, operators, control structures, functions, arrays, strings, classes, dynamic memory, file handling, and the Standard Template Library (STL). By the end of the course, you will be able to write and understand basic C++ programs.

C++

Introduction

C++ Programming for Beginners is a hands-on introduction built around 22 learning units: 11 guided labs and 11 follow-up challenges. You begin by creating, compiling, and running a small program, then progress through variables, operators, control flow, functions, arrays, strings, classes, exceptions, memory management, file I/O, and the Standard Template Library (STL).

The paired format gives you both instruction and retrieval practice. Guided labs break a topic into focused coding tasks, while challenges ask you to apply the same ideas in small programs such as a temperature converter, grading system, student manager, inventory tracker, and roster.

What You Will Learn

After completing this course, you will be able to:

  • Write, compile, run, and correct basic C++ programs with g++
  • Use built-in data types, variables, constants, casts, and arithmetic, relational, logical, bitwise, and conditional operators
  • Control program behavior with branches and loops, and organize logic with parameters, references, overloads, recursion, and function prototypes
  • Store and process data with one- and two-dimensional arrays, C-style strings, std::string, sorting, searching, and line-based input
  • Model simple programs with classes, constructors, destructors, access control, inheritance, overriding, and exception handling
  • Manage dynamic objects and arrays with new and delete, and express ownership with unique_ptr and shared_ptr
  • Read and write text and binary files, and use STL containers and algorithms including vector, list, map, set, stack, queue, sort, and find

Who This Course Is For

This course is for complete programming beginners, learners moving to C++ from another language, and students who want structured practice before studying more advanced C++ topics.

Prerequisites: No prior programming experience is required. Basic comfort using a keyboard and following terminal commands is helpful; the first lab introduces the source-file, compiler, executable, and error-correction workflow.

Learning environment: Every lab and challenge runs in a browser-based Ubuntu 22.04 WebIDE. You edit .cpp files and use the GNU g++ compiler from the terminal, so you do not need to prepare a local C++ toolchain.

Frequently Asked Questions

How is the course organized?

The course contains 11 guided labs, each followed by a challenge on the same area, for 22 units in total. The guided work introduces the syntax and workflow; the challenge checks whether you can apply them with less scaffolding.

Can I take this course with no coding experience?

Yes. It starts with program structure, output, compilation, execution, comments, and common syntax errors before introducing variables and program logic. Later topics move quickly, so completing the exercises in order is recommended.

Do I need to install C++ on my computer?

No. The exercises use an Ubuntu 22.04 WebIDE and compile programs with g++. You will practice compiler and terminal commands inside that environment without configuring your own machine.

Does the course cover advanced or production C++?

No. It builds a broad beginner foundation and introduces both manual and smart-pointer memory management, file streams, object-oriented basics, and common STL containers. Template authoring, lambdas, concurrency, build systems, automated testing, and large application design are outside its scope.

Teacher

labby
Labby
Labby is the LabEx teacher.