0 / 0 / 0
Регистрация: 15.02.2020
Сообщений: 6
1

После выхода из метода класса вылетает ошибка

16.02.2020, 12:03. Показов 2266. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
После выхода из метода класса вылетает ошибка, хотя по отладчику прошелся, объект нормально добавялется в список, но именно после последней } вылает ошибка
вот код
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
void LoadGuests() {
        string path = "D:\\Testing System\\RegistrationData.txt";
        ifstream fin;
        Guest tmp;
        fin.open(path, ios::binary);
        if (fin.is_open()) {
            fin.read((char*)(&tmp), sizeof(tmp));
            guests.push_back(tmp);
        }
        fin.close();
    } <---- после ошибка

xmemory0
Вызвано исключение: нарушение доступа для чтения.
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// MEMBER FUNCTIONS FOR _Container_base12
inline void _Container_base12::_Orphan_all() noexcept { // orphan all iterators
#if _ITERATOR_DEBUG_LEVEL == 2
    if (_Myproxy != nullptr) { // proxy allocated, drain it
        _Lockit _Lock(_LOCK_DEBUG);
 
        for (_Iterator_base12** _Pnext = &_Myproxy->_Myfirstiter; *_Pnext != nullptr; !!! в этой строке ошибка X _Pnext было 0x1031A4.
             *_Pnext                   = (*_Pnext)->_Mynextiter) {
            (*_Pnext)->_Myproxy = nullptr;
        }
 
        _Myproxy->_Myfirstiter = nullptr;
    }
#endif // _ITERATOR_DEBUG_LEVEL == 2
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.02.2020, 12:03
Ответы с готовыми решениями:

Почему указатель теряет свои значения после выхода с метода, память выделена динамически
#include &lt;iostream&gt; using namespace std; void sqr( int* a, int length ); int main() {...

Ошибка при вызове метода класса в методе другого класса
Господа программисты, возникла такая проблема. При вызове метода класса в методе другого класса...

Ошибка после выхода из программы
Здравствуйте, написал такой код #pragma once #include &lt;iostream&gt; #include &lt;string&gt; #include...

Ошибка после выхода из программы
Всем доброго времени суток! Помогите, плиз, решить проблему!!! Есть программа, в которой у меня...

3
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
16.02.2020, 12:15 2
Цитата Сообщение от hnnssy Посмотреть сообщение
После выхода из метода класса вылетает ошибка, хотя по отладчику прошелся, объект нормально добавялется в список, но именно после последней } вылает ошибка
вот код
Покажи класс Guest
0
0 / 0 / 0
Регистрация: 15.02.2020
Сообщений: 6
16.02.2020, 12:22  [ТС] 3
C++ (Qt)
1
2
3
4
5
6
7
8
class Guest :public User {
public:
    Guest() {}
    Guest(string name, string surname, string patronymic, string home_address, long number, string login, string password)
        :User(name, surname, patronymic, home_address, number, login, password) {}
    friend bool operator== (const Guest& obj, string login);
};
bool operator== (const Guest& obj, string login) { return obj.login == login; }
0
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
16.02.2020, 12:28 4
Лучший ответ Сообщение было отмечено hnnssy как решение

Решение

Цитата Сообщение от hnnssy Посмотреть сообщение
class Guest ublic User {
Прикалываешься? А класс User где?
Хотя и так уже можно сказать - переменные класс у тебя объявлены как std::string, их нельзя так читать - fin.read((char*)(&tmp), sizeof(tmp));
1
16.02.2020, 12:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.02.2020, 12:28
Помогаю со студенческими работами здесь

Передача метода класса в качестве параметра для метода другого класса
Здравствуйте, Передо мной стоит такая задача. Необходимо разработать механизм, который бы мог...

Почему после выхода из приложения выскакивает ошибка?
Я начал писать программу для андроид (плеер) Скомпилировал, установил на свое андроид -...

Ошибка в shell32.dll после выхода из игры
день добрый, такая ошибка возникает после выхода из доты 2. критического ничего не заметил, но...

Полиморфизм: вызов метода базового класса, переопределенного метода и нового метода
В базовом классе метод помечен как virtual. Насколько я понял из книги: override означает, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru