2015-11-27 3 views
0

пытается кодировать функцию cin.getline, и это вызывает у меня ошибку, говорящей, что нет экземпляра перегруженной функции? Я уверен, что im правильно использовал параметры, не знаю, как исправить.getline() нет экземпляра перегруженной функции C++

#include <iostream> 
#include <string> 
#include <ctime> 
#include <string> 
#include <cstring> 
#include "NonPerishable.h" 
#include "Item.h" 
using namespace std; 
namespace sict { 
    class NonPerishable : public Item{ 

     fstream& save(std::fstream& file) const { 
      file << "N," << sku() << "," << name() << "," << cost() << "," << taxed() << "," << quantity() << endl; 
      return file; 
     } 

     fstream& load(std::fstream& file) { 
      char sku1[15]; 
      cin.ignore(2); 
      cin.getline(sku1, 15, ','); 

      //edit: 
      double integer; 
      cin.getline(integer, 15, ','); 
     } 
     ostream& write(std::ostream& os, bool linear) const { 

     } 

     istream& read(std::istream& is) { 


     } 
     fstream& save(std::fstream& file){ 

     } 
    }; 
} 

любая помощь будет оценена!

Редактировать: я исправил его для извлечения символов, но double/int wont work?

ответ

0

Третий аргумент должен быть символом, поэтому попробуйте одиночные кавычки:

cin.getline(sku1, 15, ','); 
+0

По какой-то причине я не могу использовать двойной, а только символ? отредактировал главный пост – petermytt