edit.. not sure if you mean "What are Includes" on a more conceptual level.
My understanding is they define the behavior of the functions that are linked to them. Like if you tried to do something like this, you wouldn't have to make the push_back function yourself because it was already "Included" with <vector>
1 2 3 4
|
do {
std::cin >> myint;
myvector.push_back (myint);
} while (myint);
|
I don't know about all of those but some of them you only have to #include when you are using specifics functions of C++
Like <iostream> would be for using cin / cout
<vector> if you use vectors
<string> for strings
<sstream> for stringstream
<ctime> for measuring clock cycles
a lot of the other ones you can look up for specific functions that you use.
I think the best way to learn what the includes do is to not use them and if you get a compile error figure out which part of your code requires the include. Then you will know to use that include when you are using that particular function.
I try to use as few includes as possible normally.