title: Should I cast size_t to int or keep the interface to size_t
body: <p>Lets say you get a vector of ints.  Doing all the operations on them, such as iterating over them, you use size_t.  Is it best to make your interface return the receiving type, or return size_t?  </p>
  
  <p>In other words, say I want to return a list of ints, but size_t is way more convenient, is it best to cast all of them, or just let the caller deal with it?</p>
  
  <p>In other (code) words,</p>
  
  <pre><code>unordered_map&lt;size_t, size_t&gt; indexFun(vector&lt;int&gt; sumNumbers) {
      unordered_map&lt;size_t, size_t&gt; someThings;
  
      for (size_t i = 0; i &lt; sumNumbers.size(); ++i) {
  
          // do something with indices
          size_t iMutated = i - 5;
          someThings[i] = iMutated;
      }
  
      return someThings;
  }
  </code></pre>