我的錯誤是什麼?當我想要獲得人員課程的結果時,它只給我提供二級信息,不顯示他們的姓名?我錯了嗎 ?我想通過人類設置人體信息,並使用它的任何幫助? (請說我改變人類如何kname和保存個人類變化) person.h在類繼承中得到相同的結果
#include<iostream>
#ifndef person_h
#define person_h
using namespace std;
class person {
protected:
static string kname;
static int kage;
public:
static void setnumber();
static void setname();
static void setage();
void display();
};
#endif
person.cpp
#include"person.h"
string person::kname;
int person::kage =0;
void person::setage()
{
cout << " please enter your age \n";
cin >> kage;
}
void person::setname()
{
cout<< "please enter your name \n";
cin >> kname;
}
void person::display()
{
int i=0;
for(i=0; i< 3; i++)
cout << kname <<endl;
}
human.h
#include<iostream>
#include"person.h"
#ifndef human_h
#define human_h
using namespace std;
class human : public person {
protected:
person k[100];
static int i;
static int counter;
public:
void info();
};
#endif
human.cpp
#include"human.h"
int human::number=0;
int human::counter=0;
void human::setnumberofperson(int a)
{
srand(time(0));
cout << " how many person ? \n";
cin >> a;
counter = a;
}
void human::info()
{int i=0;
for (i=0; i< counter; i++){
k[i].setage();
k[i].setname();
cout << k[i].kname << "\t" << "\t" << k[i].kage << endl;
}
}
的main.cpp
#include<iostream>
#include"person.h"
#include"human.h"
int main()
{
int a;
person k1;
human e1;
e1.setnumberofperson(a);
e1.sabtename();
k1.display();
}
請花一分鐘,讓您的縮進是一致的。可以擁有自己的風格,但是每個其他行都有不同的縮進方式會讓人感覺很不舒服 –
是的,我有很多人,希望保存他們的提示 –
然後刪除人物類中的每個靜態實例。 – drescherjm