для моего задания я строю кучу, данные для кучи поступают из файла.Одной из функций является получение данных, но у меня возникают проблемы с пониманием функции ifstream read (), и я получаю довольно неприятную ошибку из-за этого вот что у меня есть:
template<class T, class P>
void get_list(vector<T>& v, const char* file_loc, P func) {
T data;
ifstream inFile;
inFile.open("file_loc");
if (!inFile) {
cerr << "Error - unable to open input file\n";
exit(1);
}
inFile.read( &data, sizeof(T));
while (inFile) {
inFile.read( &data, sizeof(T));
insert(v,data,func);
}
inFile.close();
}
ошибка IЯ получаю:
prog7.h:53: error: no matching function for call to
‘std::basic_ifstream<char, std::char_traits<char> >::read(int*, long unsigned int)’
/usr/include/c++/4.3/istream:468: note: candidates are: std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT,_Traits>::read(_CharT*, std::streamsize)
[with _CharT = char, _Traits = std::char_traits<char>]
любая помощь будет высоко ценится!