title: Unused parameter in c++11
body: <p>In c++03 and earlier to disable compiler warning about unused parameter I usually use such code:</p>
  
  <pre><code>#define UNUSED(expr) do { (void)(expr); } while (0)
  </code></pre>
  
  <p>For example </p>
  
  <pre><code>int main(int argc, char *argv[])
  {
      UNUSED(argc);
      UNUSED(argv);
  
      return 0;
  }
  </code></pre>
  
  <p>But macros are not best practice for c++, so.
  Does any better solution appear with c++11 standard? I mean can I get rid of macros?</p>
  
  <p>Thanks for all!</p>