What's the difference between the types of
int foo = 10;
auto bar1 = &foo;
auto *bar2 = &foo;
The declarations are exactly equivalent.
auto works (almost) the same as template type deduction. Putting the star explicitly makes the code a bit easier to read, and makes the programmer aware that
bar2 is a pointer.