下面的程序是示值誤差:爲什麼這個C++程序使用構造函數和析構函數顯示錯誤?
#include<conio.h>
#include<iostream.h>
int count = 0;
class alpha
{
public:
alpha()
{
count++;
cout<<"\n Number of objects created "<<count;
}
~alpha()
{
cout<<"\n Number of object destroyed"<<count;
count--;
}
};
int main
{
cout<<" inside main ";
alpha a1, a2, a3, a4;
{
cout<<"\n Block 1 ";
alpha A5;
}
{
cout<<"\n Block 2 ";
alpha a6;
}
cout<<" main again ";
return 0;
}
Line 11: error: reference to 'count' is ambiguous compilation terminated due to -Wfatal-errors.
這不應該編譯可言,沒有這樣的標題'iostream.h'和你不'使用命名空間std ;'但是你正在使用'cout'等等。你還在'main'後面缺少'()'。 –
看起來像C代碼中的一個類..如果可能的話,不要使用全局變量..靜態類成員與count變量具有相同的效果。 – duedl0r
你使用什麼編譯器? –