我有代码:
#include <iostream>
#include <cstdlib>
using namespace std;
class Animal{
private:
int age;
public:
Animal() : age(1) {}
void toString(){
cout << "Age: " << age << endl;
}
};
class Cat : public Animal
{
public:
Cat() : age(5) {}
/*
void toString(){
cout << "Age: " << age << endl;
}*/
private:
int age;
};
int main(){
Cat tom;
tom.toString();
system("pause");
return 0;
}
但是我运行程序的时候,tom变量的age是1,不是5。toString是不是不能读取age变量?如果我们打开 Cat 类中的 /* */ toString 方法,年龄将是 5 !
(我的英语不是很好。谢谢)