C++;将值输入到类对象中的问题 我现在正在上C++课,需要我的代码的某个部分的帮助。它都可以编译,但当我去测试它时,我只允许在窗口中输入一个值,然后代码的其余部分就可以无需输入了

C++;将值输入到类对象中的问题 我现在正在上C++课,需要我的代码的某个部分的帮助。它都可以编译,但当我去测试它时,我只允许在窗口中输入一个值,然后代码的其余部分就可以无需输入了,c++,class,object,input,standards,C++,Class,Object,Input,Standards,作为参考,这是我要回答的问题: 11工资单 设计一个PayRoll类,该类包含员工的小时工资率(double类型的工作小时数)的数据成员。默认构造函数将工时和工资率设置为零。该类必须具有一个mutator函数来设置每个员工的工资率和工作小时数。课程应包括工作时间和工资率的访问者。最后,该类应该有一个getGross函数,该函数将返回一个double,该double通过工作小时数乘以费率计算得出 工资的问题 编写一个包含七个PayRoll对象的数组的程序。程序应该询问用户每个员工的工资率和每个员工

作为参考,这是我要回答的问题: 11工资单

设计一个PayRoll类,该类包含员工的小时工资率(double类型的工作小时数)的数据成员。默认构造函数将工时和工资率设置为零。该类必须具有一个mutator函数来设置每个员工的工资率和工作小时数。课程应包括工作时间和工资率的访问者。最后,该类应该有一个getGross函数,该函数将返回一个double,该double通过工作小时数乘以费率计算得出 工资的问题

编写一个包含七个PayRoll对象的数组的程序。程序应该询问用户每个员工的工资率和每个员工工作的小时数。确保包括声称每周工作超过60小时的员工。打印出员工的数组编号、工作小时数、工资率以及所有员工各自所在行的总工资。将打印双精度设置为小数点后两位

输入验证:对于工作小时数,不接受大于60的值,只需将功能设置为允许的最大工作小时数60即可

我的代码如下:

#include <iostream>
#include <iomanip>

//Garrett Bartholomay
/*This program defines and implements the Payroll class.
 * The class is then used in a program that calculates gross pay for an array of
 * Payroll objects after accepting values for hours and pay rate from standard input*/

class Payroll
{
private:
    int hoursWorked;
    double payRate;
public:
    Payroll();
    Payroll(int, double);
    void setHours(int);
    void setPayRate(double);
    int getHours() const;
    double getPayRate() const;
    double getGross()const;
};
Payroll::Payroll()
{
    hoursWorked = 0;
    payRate = 0.0;
}
Payroll::Payroll(int h, double r)
{
    payRate = r;
    hoursWorked = h;
}
void Payroll::setHours(int h)
{
    hoursWorked = h;
}
void Payroll::setPayRate(double p)
{
    payRate = p;
}
int Payroll::getHours() const
{
    return hoursWorked;
}
double Payroll::getPayRate() const
{
    return payRate;
}
double Payroll::getGross() const
{
    double gross = static_cast<double>(hoursWorked) * payRate;
    return gross;
}

using namespace std;
int main()
{

    const int NUM_EMPLOYEES = 7;
    Payroll employee[NUM_EMPLOYEES];
    int pay;
    int hours;
    int i;
    double grossPay;

    for (i = 0; i < NUM_EMPLOYEES; i++)
    {

        cout << "Enter the # " << (i) << " employee's rate of pay per hour: ";
        cin >> pay;
        cout << "Enter the # " << (i) << " employee's hours worked for the week: ";
        cin >> hours;

        employee[i].setPayRate(pay);
        employee[i].setHours(hours);        
    }
    cout << "\n\nHere is the gross pay for each employee:\n";
    cout << fixed << showpoint << setprecision(2);
    for (int i = 0; i < NUM_EMPLOYEES; i++)
    {
        grossPay = employee[i].getGross();
        cout << "The gross pay for employee # " << (i) << " is: " << grossPay << endl;      
    }
    return 0;
}
#包括
#包括
//加勒特·巴塞洛梅
/*此程序定义并实现工资单类。
*然后,该类将用于一个程序中,该程序计算一系列
*接受标准输入的小时数和工资率值后的工资单对象*/
班级工资单
{
私人:
工作时间;
双倍工资率;
公众:
工资单();
薪金总额(整数,双倍);
无效设置小时数(int);
无效设定工资率(双倍);
int getHours()常量;
双getPayRate()常量;
双getGross()常量;
};
工资单::工资单()
{
工时=0;
工资率=0.0;
}
工资单::工资单(整数h,双r)
{
工资率=r;
工时=小时;
}
无效工资单::设定小时数(整数小时)
{
工时=小时;
}
无效工资单::设置工资率(双p)
{
工资率=p;
}
int Payroll::getHours()常量
{
返回工作小时数;
}
double Payroll::getPayRate()常量
{
回报率;
}
double Payroll::getGross()常量
{
双倍毛额=静态铸造(工时)*工资率;
总回报;
}
使用名称空间std;
int main()
{
const int NUM_EMPLOYEES=7;
工资员工[员工人数];
国际支付;
整小时;
int i;
重瓣罗缎;
对于(i=0;i不欢迎这么做!家庭作业类型的问题通常是不鼓励的。话虽如此,请简短地总结你的问题,而不是两段通常会让用户感到厌烦的大段落。我们当然知道家庭作业问题是什么。现在,你对你的代码有什么问题?你的程序对我来说很好。你是e吗输入一个非数字?啊,这可能是因为你要的是
int
(整数)并输入实数。试着让
pay
hours
输入
double
,可能会添加一些错误检查。检查