title: C++ macro declared in a class definition?
body: <p>I've spent the past couple of days learning C++, but I just came across something that I hadn't seen in the books nor after doing some research on Google.</p>
  
  <p>As far as I know, a macro is a statement or "variable" name that is preceded by <code>#define</code> hat allows certain values or functions to be specified later and inserted where desired automatically.</p>
  
  <p>However, I've come across a function that is declared inside a clas and not preceded by <code>#define</code> and it is called a "macro". The function is from MFC and is called <code>DECLARE_MESSAGE_MAP</code>.
  <a href="http://msdn.microsoft.com/en-us/library/08ea0k43.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/08ea0k43.aspx</a></p>
  
  <p>Can someone explain what this type of macro is; what is it called (so I could further research it) and what does it mean?</p>