title: What does [](){} construction mean in c++?
body: <p>I have this code.</p>
  
  <pre><code>boost::for_each(
      boost::make_iterator_range(
              func(arg1),
              func(arg2)
          ),
          [&amp;d, &amp;f](const a&lt;b&gt;&amp; c)
          {
              something;
          }
  );
  </code></pre>
  
  <p>I understand the iterator part of the code. What is not clear to me is over what we iterate. What does this construction mean? <code>[](){}</code></p>