Это довольно не важно общей скорости Вашего приложения, с каким Вы идете.
Однако я знаю, что Вы сказали, что не заботитесь, но используйте 2-й, как это о миллион раз, легче читать. И удобочитаемость огромна .
Чтобы понять цепочку областей видимости, вы должны знать, как работают замыкания.
Замыкание формируется при вложении функций,
// numeric_limits example
#include <iostream>
#include <limits>
using namespace std;
int main () {
cout << "Minimum value for float: " << numeric_limits<float>::min() << endl;
cout << "Maximum value for float: " << numeric_limits<float>::max() << endl;
cout << "Minimum value for double: " << numeric_limits<double>::min() << endl;
cout << "Maximum value for double: " << numeric_limits<double>::max() << endl;
return 0;
}