Hi all, any help would be greatly appreciated. This program is supposed to allow the user to read in a txt file with ingredients for recipes. We were asked to use the fstream and to use functions to read in the info and display it. I am new to this and have the following error message I can't figure out..
I don't know how to add numbers to the left of the code but the red marked line is at line 54 which begins the function that has the errors in it.
Any help would be greatly appreciated!!
~G
lines 64,76,78,89, 95,96
no matching function for call to getline(std::basic_ifstream<char, std::char_traits<char> >double&)
same msg for lines 80, 97 only replace double with bool
CODE
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
//////////////
//struct
/////////////
struct Recipe
{
string recipeName;
double page;
string meatIngred;
string ingred2;
string ingred3;
string ingred4;
string ingred5;
double tempature;
double time;
bool isEasy;
};
////////////////////////////
// prototype
///////////////////////////
void fillIngred(Recipe[], int, ifstream&);
//void displayIngred(Recipe, int);
int main()
{
ifstream indata;
//CONSTANTS;
const int MAX = 10;
//VARIABLES
Recipe book[MAX];
indata.open("recipeFile.txt");
if(!indata)
{
cerr << "Error: File could not be opened" << endl;
}
fillIngred(book, MAX, indata);
displayIngred(book);
indata.close();
}
[COLOR="Red"]void fillIngred(Recipe temp[], int MAX, ifstream& indata)[/COLOR]
{
cout<<"entering data...: ";
getline(cin, temp[num].recipeName);
getline(indata, temp[num].page);
getline(indata, temp[num].meatIngred);
getline(indata, temp[num].ingred2);
getline(indata, temp[num].ingred3);
getline(indata, temp[num].ingred4);
getline(indata, temp[num].ingred5);
getline(indata, temp[num].tempature);
getline(indata, temp[num].time);
getline(indata, temp[num].isEasy);
}
while (!indata.eof());
{
for (int i=0; i<MAX; i++)
{
num++;
getline(indata, temp[num].recipeName);
getline(indata, temp[num].page);
getline(indata, temp[num].meatIngred);
getline(indata, temp[num].ingred2);
getline(indata, temp[num].ingred3);
getline(indata, temp[num].ingred4);
getline(indata, temp[num].ingred5);
getline(indata, temp[num].tempature);
getline(indata, temp[num].time);
getline(indata, temp[num].isEasy);
}
}
}
void displayIngred(Recipe temp[], int MAX)
{
for (int i=0; i<MAX; i++)
{
cout << temp[i].recipeName << endl;
cout << temp[i].page << endl;
cout << temp[i].meatIngred << endl;
cout << temp[i].ingred2 << endl;
cout << temp[i].ingred3 << endl;
cout << temp[i].ingred4 << endl;
cout << temp[i].ingred5 << endl;
cout << temp[i].tempature << endl;
cout << temp[i].time << endl;
cout << temp[i].isEasy << endl;
cout << endl;
cout << endl;
}
}