Where possible, functions that return sizes or dimensions of objects should return unsigned values instead of size_t. Callers of such functions can then safely assign the return value to either unsigned or size_t variables. This practice minimizes impact on existing code and enhances safety and flexibility. However, this recommendation applies only to situations where you can reasonably judge that the object whose dimension is being returned will never be large enough to exceed the 32-bit limit.