0 / 0 / 0
Регистрация: 08.12.2014
Сообщений: 7
|
|
1 | |
Добавлении данных из бинарного файла в очередь20.04.2010, 16:02. Просмотров 367. Ответов 0
Метки нет Все метки)
(
Я пишу данные очереди в бинарный файл, потом считываю, отладчик пишит, что данные считаны, однако в функции enqueue происходит вылет проги. Помогите с идеями, я уже замучалась.
Код
Очередь: template <typename Item> class QueueTP { private: enum {Q_SIZE = 10}; class Node { public: Item item; Node *next; Node (const Item & i): item(i), next(0) {} }; Node *front; Node *rear; int itsSize; //текущее кол-во в очереди const int qsize; // макс. кол-во элементов QueueTP(const QueueTP & q) : qsize(0) {} QueueTP & operator=(const QueueTP & q) {return *this;} public: QueueTP (int qs = Q_SIZE); ~QueueTP(); bool writeFile(std::ofstream & os); bool readFile(std::ifstream & is); void enqueue(const Item &item); void dequeue(Item &item); inline int size() const { return itsSize; } void clear(); bool isempty() const ... Функция clear() для очистки всей очереди для считывания. template <typename Item> bool QueueTP<Item>::writeFile(std::ofstream & os) { Node *temp = front; cout << "File" << endl; cout << temp->item; while (temp) { os.write(reinterpret_cast<char *> (&temp->item), sizeof(Item)); temp = temp->next; } return true; } template <typename Item> bool QueueTP<Item>::readFile(std::ifstream & is) { clear(); Item tmp; while (!is.eof()) { is.read(reinterpret_cast <char *> (&tmp), sizeof(tmp)); //enqueue(tmp); //вот здесь все и рушится, точнее в самой функции } return true; } template <typename Item> void QueueTP<Item>::enqueue(const Item &item) { if (isfull()) throw ExcEnqueue(); Node *add = new Node(item); //создали узел node обвал проги!!! if (add == NULL) throw ExcEnqueue(); itsSize++; if (front == 0) front = add; else rear->next = add; rear = add; }
0
|
|
20.04.2010, 16:02 | |
Считывание данных из бинарного файла Чтение данных из бинарного файла Чтение данных из бинарного файла |
|
20.04.2010, 16:02 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Вывод данных из бинарного файла Чтение данных из бинарного файла Трабл с считыванием данных из бинарного файла Вывод на экран данных их бинарного файла Чтение данных из бинарного файла в массив Открытие бинарного файла и преобразование данных в dec Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |