Stange error with preprocessor macro
<p>i have changed code style and aslo i hope it will   help
<a href="http://www.cs.bell-labs.com/cm/cs/pearls/spacemod.cpp" rel="nofollow">http://www.cs.bell-labs.com/cm/cs/pearls/spacemod.cpp</a></p>

<pre><code>#include &lt;iostream&gt;
using namespace std;

#define MEASURE(T,  text)
{        \
   int i;
cout&lt;&lt;text&lt;&lt;"\t";                       \

 cout&lt;&lt;sizeof(T)&lt;&lt;"\t";                     \
 int lastp=0;\
  for ( i=0;i&lt;11;i++){                \
      T *p=new T;                                  \
      int thisp=(int)p;                                   \
       if (lastp!=0)   cout&lt;&lt;" "&lt;&lt;thisp-lastp;           \
       lastp=thisp;                             \
  }                                                                     \
  cout&lt;&lt;"n";\
  }                                                     \
  using namespace std;
template &lt;class T&gt;
void measure(char *text)
{
    cout&lt;&lt;"measure"&lt;&lt;text&lt;&lt;"\t";  
    cout&lt;&lt;sizeof(T)&lt;&lt;"\n";
}
int main(){



     return 0;
}
</code></pre>

<p>it has only one mistake</p>

<pre><code>1&gt;c:\users\david\documents\visual studio 2010\projects\measure\measure.cpp(5): error C2447: '{' : missing function header (old-style formal list?)
</code></pre>
