C++疑惑?
#include<iostream>
using namespace std;
class CAT
{
public:
CAT(){itsAge=1;itsWeight=5;}
~CAT()
int GetAge() const {return itsAge;}
int GetWeight() const {return itsWeight;}
void SetAge(int age) {itsAge=age;}
private:
int itsAge;
int itsWeight;
};
int main()
{
CAT * Family[500];
int i;
CAT * pCat;
for(i=0;i<500;i++)
{
pCat=new CAT;
pCat->SetAge(2*i+1);
Family[i]=pCat;
}
for(i=0;i<500;i++)
{
cout<<"Cat #"<<i+1<<":";
cout<<Family[i]->GetAge()<<endl;
}
return 0;
}
为什么要这样写:pCat=new CAT;Family[i]=pCat;请求大虾们赐教?
[解决办法]
pCat=new CAT;用指针定义一个对象。
Family[i]=pCat;然后把这个指针保存在指针数组里
[解决办法]