施坦格的錯誤,我已經改變了代碼風格和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