Is it important to declare a variable as unsigned if you know it should never be negative? Does it help prevent anything other than negative numbers being fed into a function th
It also keeps you from having to cast to/from unsigned whatever when interacting with other interfaces. For example:
for (int i = 0; i < some_vector.size(); ++i)
That will generally annoy the hell out of anyone who needs to compile without warnings.