Вызвано исключение: нарушение доступа для чтения?
#pragma once
#include "Headers.h"
std::shared_ptr<BaseClass> getPtr(char c)
{
if (c == 'W') return std::make_shared<W>();
else if (c == 'P') return std::make_shared<P>();
}
class Class
{
public:
Class() = default;
~Class() = default;
void read(std::istream&);
void print(std::ostream&);
std::vector<std::shared_ptr<BaseClass>> ClassList;
private:
};
void Class::read(std::istream& in)
{
while (!in.eof())
{
char c;
in >> c;
std::shared_ptr<BaseClass> ptr = getPtr(c);
ptr->read(in);
ClassList.push_back(ptr);
}
}
void Class::print(std::ostream& out)
{
std::ostream_iterator<std::shared_ptr<BaseClass>> _out(out);
std::copy(TarifsList.begin(), TarifsList.end(), _out);
}
Ошибка на этапе выполнения, не могу найти решение.
Источник: Stack Overflow на русском