gpt4 book ai didi

c++ - C++/错误: no matching function for call to calcGrossWages()

转载 作者:行者123 更新时间:2023-12-02 11:15:21 24 4
gpt4 key购买 nike

/**************************************************************************************
* The program should display each employee number *
* ask the user to enter that employee’s hours and pay rate. *
* It should then calculate the gross wages for that employee(hours times pay rate) *
* store them in the wages array. *
* After the data has been entered for all the employees, *
* the program should display each employee’s identification number and gross wages. *
**************************************************************************************/

#include <cstdlib>
#include <iostream>
#include <iomanip>

using namespace std;


const int Num_Employees = 7; // global constant of # of employees

int empId[Num_Employees] = {5658846, 4520125, 785122, 877541, 8451277, 1302850, 7580489}; // array of Employee ID #'s
int hours[7]; // empty array of 7 possible values for employee hours
double payRate[7]; // empty array of 7 possible values for employee pay rates
double wages[7]; // empty array of 7 possible values for employees wages (hours * pay rate)

void calcGrossWages(int[], double[], double[]); // calculate gross wages prototype



int main() {


// Employees
for(int i= 0; i< Num_Employees; i++) {

cout << "Your ID is: " << "" << empId[i] << endl; // displays each employee #

cout << "How many hours did you work?";

cin >> hours[i];



cout << "What was your payRate?" << endl;

cout <<"$";

cin >> payRate[i];
}

/*Calculate the gross wages*/

for(int i = 0; i < Num_Employees; i++) {

wages[i] = calcGrossWages(hours[i], payRate[i], wages[i]);


}

}



//******************************************************************************
//* Definition of calcGrossWages function *
//* This function calculates the employees Wages *
//* Wages are calculated by the # of hours worked by each employee *
//* multiplied by their enter pay rate *
// *****************************************************************************

void calcGrossWages(int hours[], double payRate[], double wages[])
{
for (int i= 0; i< Num_Employees; i++) {

wages[i] = hours[i] * payRate[i];

}





}

问题:

如何将数组作为参数正确传递给函数,从而使一个人能够在空数组中输入值?

为什么我收到一个错误消息,说明调用“calcGrossWages”没有匹配函数

最佳答案

您应该在 calcGrossWages 中传递数组,而不是仅传递array元素,并且不需要在main中循环调用 calcGrossWages

 /********************************************************************************   ******
* The program should display each employee number *
* ask the user to enter that employee’s hours and pay rate. *
* It should then calculate the gross wages for that employee(hours times pay rate) *
* store them in the wages array. *
* After the data has been entered for all the employees, *
* the program should display each employee’s identification number and gross wages. *
******************************************************************************** ******/

#include <cstdlib>
#include <iostream>
#include <iomanip>

using namespace std;


const int Num_Employees = 7; // global constant of # of employees

int empId[Num_Employees] = {5658846, 4520125, 785122, 877541, 8451277, 1302850, 7580489}; // array of Employee ID #'s
int hours[7]; // empty array of 7 possible values for employee hours
double payRate[7]; // empty array of 7 possible values for employee pay rates
double wages[7]; // empty array of 7 possible values for employees wages ( hours * pay rate)

void calcGrossWages(int[], double[], double[]); // calculate gross wages prototype



int main() {


// Employees
for(int i= 0; i< Num_Employees; i++) {

cout << "Your ID is: " << "" << empId[i] << endl; // displays each employee #

cout << "How many hours did you work?";

cin >> hours[i];



cout << "What was your payRate?" << endl;

cout <<"$";

cin >> payRate[i];
}

/*Calculate the gross wages*/

calcGrossWages(hours, payRate, wages);

}




//******************************************************************************
//* Definition of calcGrossWages function *
//* This function calculates the employees Wages *
//* Wages are calculated by the # of hours worked by each employee *
//* multiplied by their enter pay rate *
// *****************************************************************************

void calcGrossWages(int hours[], double payRate[], double wages[])
{
for (int i= 0; i< Num_Employees; i++) {

wages[i] = hours[i] * payRate[i];

}





}

关于c++ - C++/错误: no matching function for call to calcGrossWages(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39504535/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com