JetBrains Academy logo
Free courseJetBrains s.r.o.

C++Basics

This course is designed for beginners who want to learn the basics of the C/C++ language. After successfully completing this course, you will be able to read and write C++ code and develop your own multi-file programs of medium complexity.

Skill levelBeginner
Time to complete 26 days

You'll take this course in your JetBrains IDE.
Just install JetBrains Toolbox, and we'll handle the rest!

Skill levelBeginner
Time to complete 26 days

About this course

The main goal of the course is to introduce the C++ language, its philosophy of zero-cost abstractions; its distinctive features compared to other languages, and, in particular, manual memory management, and its areas of use, such as high-performance applications, graphics, and system programming.

During this course, you will be developing a simple 2D arcade game. In this game, the player controls a planet that moves through space, consuming smaller asteroids and dodging black holes. With each new topic covered, you will improve the game by implementing new functionality based on the concepts you have learned, among other things: object-oriented and template meta-programming in C++.

Code editor icon

This course runs directly in your
JetBrains IDE

Learn more

Content

  1. First program
  2. On types of variables in C++
  1. Start the Game
  2. Move an Object
  3. Giving Direction
  4. Draw a Line
  5. Running in a Loop
  6. Hunting Bugs
  7. Play Around
  1. Pointers
  2. Swap
  3. Null pointer
  4. Pointer Arithmetics
  5. Arrays memory layout
  6. Function pointers
  7. Static memory
  8. Stack memory
  9. Dynamic memory
  10. Copy array
  11. Memory errors
  1. Doubly linked list
  1. const keyword
  2. Mutable or immutable
  3. References
  4. Swap again
  5. Passing arguments
  1. C and C++ styles
  2. C style type casts
  3. Choose valid type cast
  4. C style strings
  5. C style strings concatenation
  6. C style strings splitting

Learn directly inside your JetBrains IDEs

Real-world development environmentZoom
Real-world development environmentZoom
Real-world development environmentZoom
Real-world development environmentZoom
  • Real-world development environment

    Gain practical experience with the tools and workflows you'll use in your career, minimizing the learning curve when transitioning to real-world projects.

  • Project-based learning journey

    Our plugin is built to help you finish real-world coding projects, which you can display in your code portfolio after completion.

  • Collaboration via Git

    Effortlessly track changes and collaborate on projects using Git, an essential tool for programmers in every field.

  • Focused learning

    Enjoy fewer distractions with assignments, code, debugging, and version control all in one window.

Screen

Build a web interface

Design a simple web application to showcase your AI playing Dots and Boxes.

University

Master deep reinforcement learning

Discover the key concepts that empower AlphaZero to surpass human intelligence.

Game dev

Develop AI games

Build AI players for Tic Tac Toe, Connect Four, and Dots and Boxes, step by step.

Getting started

  • 1

    Install the JetBrains Toolbox App

    The course requires the latest version of the Toolbox application. If you don’t have it, you can download it here. If your JetBrains Toolbox version is 2.5 or older, you should upgrade it.

  • 2

    Launch the course

    The Toolbox app will automatically open. A pop-up will ask you to click Allow to proceed. Once the remote IDE is open, simply click Start to begin the course.

For additional help, check out our Troubleshooting guide

FAQ and troubleshooting

Yes, you will need the JetBrains Toolbox App and a JetBrains IDE.

But don’t worry! Just click the Open course button and then select Allow in the resultant popup to install the JetBrains Toolbox App. We've taken care of all the necessary settings, and the app will handle the rest of the setup for you.

The JetBrains Toolbox App checks which IDE is compatible with your course and whether it is installed on your computer. If you have the necessary IDE installed, the app will open it. If not, JetBrains Toolbox will initiate the installation, prioritizing free community editions.

Yes, the JetBrains Toolbox App is essential even if you already have a JetBrains IDE. It automatically prepares your IDE for studying by installing the essential plugins and updating the IDE if necessary.

Please make sure your version of the JetBrains Toolbox App is 1.28 or newer. To update, open the app and click Update Toolbox App to 2.x.x., or download the latest version here.

Yes, the course is free, but it requires a licensed version of CLion. If you don't have one, please claim a 30-day free trial or take advantage of our free student license offer. For further details, see our Subscription Options and Pricing page.

There might be an issue with the settings. To resolve this issue, follow these steps:

  1. Go to Settings | Advanced Settings.
  2. Ensure that Use the ReSharper C++ language engine (CLion Nova) is disabled.
  3. If it is enabled, disable it and restart your IDE.

These steps should help launch the tests successfully.