编写设计一个People(人)类。该类的数据成员有年龄(age)、身高(height)、体重(weight)和人数(num),其中人数为静态数据成员,成员函数有构造函数(People)、进食(Eatt

#include<iostream>

using namespace std;

class People{

protected:

int age;

double height;

double weight;

static int num;

public:

People(int a ,double h,double w){

age=a;

height=h;

weight=w;

num++;}

~People(){};

void Sporting(){height++;};

void Eating () {weight++;};

void Sleeping (){

age++;

height++;

weight++;

}

static int getNum(){ return num;} 

void Show() {

cout<<"age"<<" "<<"heigth"<<" "<<"weight"<<" "<<endl;

cout<<age<<" "<<height<<" "<<weight<<endl;}

void showNum(){cout<<"number:"<<num<<endl;};

};

int People::num=0; //一定要给静态函数赋初值

void main(){

 

People t1(52,180,56);

People t2(41,134,42);

t1.Show();

t2.Show();

    t1.showNum();

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 人的姓名年龄身高体重;显示人数函数用于显示当前已经创建的人数。 以下是一个可能的实现: ```c++ #include <iostream> #include <string> class People { public: People(const std::string& name, int age, double height, double weight) : name_(name), age_(age), height_(height), weight_(weight) { ++count_; } void display() const { std::cout << "Name: " << name_ << std::endl; std::cout << "Age: " << age_ << std::endl; std::cout << "Height: " << height_ << std::endl; std::cout << "Weight: " << weight_ << std::endl; } static void display_count() { std::cout << "Number of people: " << count_ << std::endl; } private: std::string name_; int age_; double height_; double weight_; static int count_; }; int People::count_ = 0; int main() { People p1("Alice", 20, 1.6, 50.0); People p2("Bob", 25, 1.8, 70.0); p1.display(); p2.display(); People::display_count(); return 0; } ``` 输出: ``` Name: Alice Age: 20 Height: 1.6 Weight: 50 Name: Bob Age: 25 Height: 1.8 Weight: 70 Number of people: 2 ``` ### 回答2: 本题要求设计一个people该类包含以下数据成员姓名年龄身高体重人数,其中人数静态数据成员,表示该类对象的个数。成员函数包括构造函数、显示和显示人数构造函数可以由参数姓名年龄身高体重来构造对象,显示函数可以用来显示对象的信息,显示人数函数用来显示该类当前对象的个数。 首先,我们定义一个people,包含姓名年龄身高体重人数这五个数据成员,其中人数为静数据成员: ``` class people{ private: string name; //姓名 int age; //年龄 int height; //身高 int weight; //体重 static int count; //人数 public: people(string n, int a, int h, int w); //构造函数 void display(); //显示函数 static void display_count(); //显示人数函数 }; ``` 在people中,我们定义了一个私有的静态数据成员count来表示该类对象的个数,同时也定义了一个公有的构造函数people(string n, int a, int h, int w),用于通过传入姓名年龄身高体重参数构造对象。此外,还定义了一个显示函数display()来显示对象的信息,以及一个静态的显示人数函数display_count()来显示该类的对象个数。 接下来,我们实现这些成员函数。首先是构造函数people(string n, int a, int h, int w): ``` people::people(string n, int a, int h, int w){ name = n; age = a; height = h; weight = w; count++; } ``` 在构造函数中,我们将传入的参数n、a、h、w分别赋值给数据成员name、ageheightweight,并将count静态变量加1,表示构造了一个新的对象。 接下来是显示函数display(): ``` void people::display(){ cout << "姓名:" << name << endl; cout << "年龄:" << age << endl; cout << "身高:" << height << "cm" << endl; cout << "体重:" << weight << "kg" << endl; } ``` 在该函数中,我们使用cout语句输出该对象的所有信息,包括姓名年龄身高体重。 最后是静态的显示人数函数display_count(): ``` void people::display_count(){ cout << "当前对象个数为:" << count << endl; } ``` 该函数中,我们只需要使用cout语句输出count静态变量的值即可。这个静态函数中不能使用对象的数据成员成员函数。 最后,我们在主函数中测试这个people成员函数的功能: ``` int main(){ people p1("张三", 18, 175, 65); //创建一个对象 p1.display(); //显示p1对象的信息 people::display_count(); //显示当前对象的个数 people p2("李四", 20, 180, 70); //创建一个对象 p2.display(); //显示p2对象的信息 people::display_count(); //显示当前对象的个数 return 0; } ``` 在主函数中,我们首先创建一个对象p1,并使用p1.display()函数输出p1的信息。接着调用people::display_count()函数,输出当前对象的个数。然后,我们创建一个新的对象p2,并输出p2的信息以及当前对象的个数。在程序运行之后,我们可以看到输出的信息如下: ``` 姓名:张三 年龄:18 身高:175cm 体重:65kg 当前对象个数为:1 姓名:李四 年龄:20 身高:180cm 体重:70kg 当前对象个数为:2 ``` 从输出的信息可以看出,我们成功地设计一个people,并实现了该类成员函数。 ### 回答3: People一个能够描述人物基本信息的,它包含了姓名年龄身高体重人数五个数据成员。其中人数一个静态数据成员,表示当前已经创建的People型对象的数量。除此之外,People还包含了构造函数和显示函数这两个成员函数,以满足各种操作需求。 构造函数一个非常重要的函数,它能够帮助我们创建一个新的People型对象。在本例中,构造函数通过传递四个参数(姓名年龄身高体重)来创建新对象。这些参数用于初始化对象的姓名年龄身高体重数据成员。这样,我们就在构造函数中初始化了People对象的全部数据成员,使得使用者不需要单独初始化对象的各项属性。 除了构造函数外,People还包含了一个显示函数,例如show()函数。它根据当前对象的数据成员值来显示出这个人物的相关信息。通常,show()函数会将对象信息输出到控制台,使得使用者能够更直观地了解当前对象的属性。同时,为了统计当前已经创建的对象数量,我们还可以在show()函数中调用静态数据成员人数”来输出对象总数。 最后,鉴于编辑器的要求,让我们简单地描述People的实现步骤。首先,我们使用定义语法创建一个People。在定义中,我们声明了五个数据成员和三个成员函数。然后,我们在定义中实现了构造函数和显示函数,使得使用者能够创建新的People型对象并查看对象信息。最后,我们在main()函数中来测试People,用一些示例代码来演示我们如何使用这个。这样,我们就可以发现People非常灵活和有用,有助于我们更好地管理人物信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值