c++中对Animal类的成员变量name和age赋初值
时间: 2023-08-14 14:03:42 浏览: 225
可以使用构造函数来为Animal类的成员变量name和age赋初值。例如:
```c++
class Animal {
public:
string name;
int age;
// 构造函数,用于初始化成员变量
Animal() : name("Unknown"), age(0) {}
};
```
在上面的代码中,Animal类的构造函数会初始化成员变量name为"Unknown",age为0。这样,在创建Animal对象时,如果没有显式地对name和age进行赋值,它们就会被初始化为默认值。
相关问题
用c++写一个类Animal, 并对其成员变量name和age使用构造函数进行赋值,Animal类包含3个变量t1, t2 和t3, t1,t2和t3都有name和age, age表示t1,t2,t3的年龄,age 为int 类型,name为string类型,并对t1, t2和t3的age进行排序
以下是使用C++编写的Animal类,其中包含t1, t2, t3三个对象,每个对象都有name和age两个成员变量。使用构造函数对t1, t2和t3的name和age进行赋值,使用sort函数对t1, t2和t3的age进行排序。
```C++
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
class Animal {
public:
string name;
int age;
Animal(string n, int a) {
name = n;
age = a;
}
};
bool cmp(Animal a, Animal b) {
return a.age < b.age;
}
int main() {
Animal t1("Tom", 5);
Animal t2("Jerry", 3);
Animal t3("Spike", 7);
Animal animals[] = {t1, t2, t3};
sort(animals, animals+3, cmp);
for (int i = 0; i < 3; i++) {
cout << animals[i].name << " " << animals[i].age << endl;
}
return 0;
}
```
输出结果为:
```
Jerry 3
Tom 5
Spike 7
```
用c++写一个class Animal, 包含成员变量name和成员变量age, 父类Animal有两个子类Cat和Dog, 比较Animal的age并打印输出
以下是一个简单的实现:
```c++
#include <iostream>
#include <string>
using namespace std;
class Animal {
public:
string name;
int age;
};
class Cat : public Animal {
public:
Cat(string n, int a) {
name = n;
age = a;
}
};
class Dog : public Animal {
public:
Dog(string n, int a) {
name = n;
age = a;
}
};
int main() {
Cat myCat("Whiskers", 3);
Dog myDog("Spot", 5);
if (myCat.age > myDog.age) {
cout << "My cat is older than my dog." << endl;
} else if (myCat.age < myDog.age) {
cout << "My dog is older than my cat." << endl;
} else {
cout << "My cat and dog are the same age." << endl;
}
return 0;
}
```
在这个例子中,我们首先定义了一个Animal类,它有两个成员变量name和age。然后我们创建了两个子类Cat和Dog,它们都继承了Animal的成员变量和方法。
在main函数中,我们创建了一个名为myCat的Cat对象和一个名为myDog的Dog对象,并将它们的name和age设置为不同的值。然后我们比较它们的age并打印输出,告诉我们哪个更老。
阅读全文
相关推荐

















