//When using auto variables, the data type is decided in initialisation
#include <iostream>
using namespace std;
int main() {
auto IntegerVar=25; //creates integer type variable
auto FloatVar=26.77; //creates float type variable
auto StringVar="Hello"; //creates string type variable
auto CharVar="C"; //creates char type variable
cout<<"CREATING VARIABLES USING AUTO DATA TYPE
";
cout<<"Integer: "<<IntegerVar<<endl;
cout<<"Float: "<<FloatVar<<endl;
cout<<"String: "<<StringVar<<endl;
cout<<"Char: "<<CharVar;
cout<<"
";
return 0;
}
Use auto && for the ability to modify and discard values of the sequence within the loop. (That is, unless the container provides a read-only view, such as std::initializer_list, in which case it will be effectively an auto const &.)
Use auto & to modify the values of the sequence in a meaningful way.
Use auto const & for read-only access.
Use auto to work with (modifiable) copies.
int foo = 0;
auto bar = foo; // the same as: int bar = foo;
// type of bar is the type of the value used to initialize it
for (auto&& [first,second] : mymap) {
// use first and second
}
#include<iostream>
#incllude<vector>
using namespace std;
int main() {
vector<int> vec(10); // Auto deduce type to be iterator of a vector of ints.
for(auto it = vec.begin(); it != vec.end(); vec ++)
{
cin >> *it;
}
return 0;
}
auto n=1;
// this will make the type int, and you can't change trough the program;
cout << n;
// OR
auto n="how you doin'";
cout << n;