c++设计一个人事管理的“人员”类。跪求帮忙改一下
#include<iostream>
using namespace std;
class people{
public:
void num();
void sex();
void id();
void date();
private:
int num;
char sex;
int id;
int date;
};
people::num()
{cin>>num;
cout<<"num: "<<num<<endl;
}
people::sex()
{cin>>sex;
cout<<"sex: "<<sex<<endl;
}
people::id()
{cin>>id;
cout<<"id:"<<id<<endl;
}
class Date{
public:
void setDate(int newY=0,int newM=0,int newD=0);
void showDate();
private:
int year,mouth,day;
};
void Date::setDate(int newY,int newM,int newD){
year=newY;
mouth=newM;
day=newD;
}
inline void Date::showDate(){
cout<<year<<":"<<mouth<<":"<<day<<endl;
}
int main()
{
people s;
s.num();
s.sex();
s.id();
s.date();}
[解决办法]
#include <iostream.h>#include <stdio.h>class people{public: void get_num(); void get_sex(); void get_id(); void get_date();private: int num; char sex; int id; int date;};void people::get_num(){ cin>>num; cout<<"num: "<<num<<endl;}void people::get_sex(){ cin>>sex; cout<<"sex: "<<sex<<endl;}void people::get_id(){ cin>>id; cout<<"id:"<<id<<endl;}void people::get_date(){ cin>>date; cout<<"date:"<<date<<endl;}class Date{public: void setDate(int newY=0,int newM=0,int newD=0); void showDate();private: int year,mouth,day;};void Date::setDate(int newY,int newM,int newD){ year=newY; mouth=newM; day=newD;}inline void Date::showDate(){ cout<<year<<":"<<mouth<<":"<<day<<endl;}void main(){ people s; s.get_num(); s.get_sex(); s.get_id(); s.get_date(); }
[解决办法]
主要错误是标识符重名,函数和变量也是不能用同一个名字的。
#include<iostream>using namespace std;class people{public: void num(); void sex(); void id(); void date();private: int _num; /*标识符重名*/ char _sex; /*标识符重名*/ int _id; /*标识符重名*/ int _date; /*标识符重名*/};void people::num() /*少了void*/{ cin>>_num; /*改名*/ cout<<"num: "<<_num<<endl; /*改名*/}void people::sex() /*同上*/{ cin>>_sex; cout<<"sex: "<<_sex<<endl;}void people::id() /*同上*/{ cin>>_id; cout<<"id:"<<_id<<endl;}class Date{public: void setDate(int newY=0,int newM=0,int newD=0); void showDate();private: int year,mouth,day;};void Date::setDate(int newY,int newM,int newD){ year=newY; mouth=newM; day=newD;}inline void Date::showDate(){ cout<<year<<":"<<mouth<<":"<<day<<endl;}int main(){ people s; s.num(); s.sex(); s.id(); s.date();}