我的函數包含字符串和整數,但在運行它時,我得到錯誤:函數返回銀行賬戶餘額
error: could not convert 'balance' from 'int' to 'std::string {aka std::basic_string<char>}'
我試圖做到的是寫一個程序,如果你想將問到'存款'或'取款'。 然後,程序會提示一美元(整數值)。編寫'update_balance'函數以適當修改您的餘額。如果命令是「存款」,您的功能應該將美元金額添加到當前餘額;如果命令是'撤回',你的函數應該從當前餘額中減去美元金額。
命令執行完成後返回新餘額。
我當前的代碼是:
#include <iostream>
#include <string>
using namespace std;
//************************FUNCTION TO BE FIXED************************
void update_balance(string command, int dollars, int balance)
{
if (command == "withdraw")
{
balance = balance - dollars;
}
else
{
balance = balance + dollars;
}
}
//************************FUNCTION TO BE FIXED************************
int main()
{
//the amount of money in your account
int balance = 0;
// Command that will tell your function what to do
string command;
cin >> command;
// number of dollars you would like to deposit or withdraw
int dollars = 0;
cin >> dollars;
balance = update_balance(balance, dollars, command);
// Prints out the balance
cout << balance << endl;
return 0;
}
你混了順序的參數和預期回報與/無效。我的意思是'balance = update_balance(balance,dollars,command);'不匹配'void update_balance(string command,int dollars,int balance)'。 – drescherjm
您仍然沒有注意到返回值。從你的使用update_balance應該返回一個int。所以,而不是'無效update_balance(字符串命令,int美元,int餘額)'你需要'int update_balance(字符串命令,美元,int餘額)'不要忘記'返回餘額;' – drescherjm
我做了你的更改指導我和它的工作。我只需要弄清楚如何標記你的幫助作爲回答 – 4rb3l