What is the purpose of std::make_pair?
Why not just do std::pair?
Is there any difference between the tw
The difference is that with std::pair you need to specify the types of both elements, whereas std::make_pair will create a pair with the type of the elements that are passed to it, without you needing to tell it. That's what I could gather from various docs anyways.
See this example from http://www.cplusplus.com/reference/std/utility/make_pair/
pair one;
pair two;
one = make_pair (10,20);
two = make_pair (10.5,'A'); // ok: implicit conversion from pair
Aside from the implicit conversion bonus of it, if you didn't use make_pair you'd have to do
one = pair(10,20)
every time you assigned to one, which would be annoying over time...