bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/C++/C++ Tutorial
C++•C++ Tutorial

C++ auto

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind C++ auto?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ x = 5; // x is automatically treated as
3Order

Put the learning moves in the order that makes the concept easiest to apply.

For example: Instead of writing int x = 5; , you can write:
It helps you write cleaner code and avoid repeating types, especially for long or complex types.
The auto keyword automatically detects the type of a variable based on the value you assign to it.

The auto Keyword

The auto keyword automatically detects the type of a variable based on the value you assign to it.

It helps you write cleaner code and avoid repeating types, especially for long or complex types.

For example: Instead of writing int x = 5; , you can write:

auto x = 5; // x is automatically treated as
int

Starting in C++11 , auto became a powerful way to let the compiler figure out the type based on the value you assign.

Example with Different Types

Here's an example showing how auto can be used to create variables of different types, based on the values you assign:

Example

// Creating auto variables auto myNum = 5; // int auto myFloatNum = 5.99f; // float auto myDoubleNum = 9.98; // double auto myLetter = 'D'; // char auto myBoolean = true; // bool auto myString = string("Hello"); // std::string

Important Notes

  • auto only works when you assign a value at the same time (You can't declare auto x; without assigning a value)
  • Once the type is chosen, it stays the same. See example below:
auto x = 5; // x is now an int
x = 10; // OK - still an int
x = 9.99; // Error - can't assign a double to an int

Note

In this tutorial, we usually use int , double , and other basic types when the type is simple and easy to see.

But for more complex types - like iterators and lambdas , which you will learn more about in a later chapter, we use auto to keep the code cleaner and easier to understand.

Previous

C++ String Data Types

Next

C++ Operators