title: How do I compute the max of two size_t variables
body: <p>I have this in my code.</p>
  
  <pre><code>vector&lt;unsigned int&gt; import;
  vector&lt;unsigned int&gt; aquired;
  . . .
  size_t new_size = max(import.size(),aquired.size());
  </code></pre>
  
  <p>and I get this error:</p>
  
  <pre><code> error: more than one instance of
   overloaded function "max" matches the
   argument list:
               function "max(int, int)"
               function "max(unsigned int, unsigned int)"
               function "max(int, unsigned int)"
               function "max(unsigned int, int)"
               function "max(long long, long long)"
               function "max(unsigned long long, unsigned long long)"
               function "max(long long, unsigned long long)"
               function "max(unsigned long long, long long)"
               function "max(float, float)"
               function "max(double, double)"
               function "max(float, double)"
               function "max(double, float)"
               argument types are: (size_t, size_t)
  </code></pre>
  
  <p>my understanding is that <code>size_t</code> is an unsigned int.  So why is this a problem and how do I get around it.</p>
  
  <p>Compiling with:</p>
  
  <pre><code>$gcc --version
  gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3
  $nvcc --version
  nvcc: NVIDIA (R) Cuda compiler driver
  Copyright (c) 2005-2010 NVIDIA Corporation
  Built on Wed_Sep__8_17:12:45_PDT_2010
  Cuda compilation tools, release 3.2, V0.2.1221
  </code></pre>