施坦格的错误,我已经改变了代码风格和ASLO我希望这将有助于 http://www.cs.bell-labs.com/cm/cs/pearls/spacemod.cpp与预处理宏
#include <iostream>
using namespace std;
#define MEASURE(T, text)
{ \
int i;
cout<<text<<"\t"; \
cout<<sizeof(T)<<"\t"; \
int lastp=0;\
for (i=0;i<11;i++){ \
T *p=new T; \
int thisp=(int)p; \
if (lastp!=0) cout<<" "<<thisp-lastp; \
lastp=thisp; \
} \
cout<<"n";\
} \
using namespace std;
template <class T>
void measure(char *text)
{
cout<<"measure"<<text<<"\t";
cout<<sizeof(T)<<"\n";
}
int main(){
return 0;
}
它只有一个错误
1>c:\users\david\documents\visual studio 2010\projects\measure\measure.cpp(5): error C2447: '{' : missing function header (old-style formal list?)
请参阅 http://www.cs.bell-labs.com/cm/cs/pearls/spacemod.cpp的[措施文本代码 – 2010-07-25 13:18:25
可能重复从编程珍珠](http://stackoverflow.com/questions/3329142/measure-texts-code-from-programming-pearls) – interjay 2010-07-25 13:22:58
@sbi:虽然这是正确的,在这种情况下,老问题的接受答案解决这里也表达了这个问题,所以我认为这个问题没有任何价值。事实上,看起来davit-datuashvili只是复制/粘贴给他的代码,然后由于一些奇怪的原因改变了反斜杠的位置,导致错误。 – interjay 2010-07-25 21:06:47