У меня есть текстовый файл со следующими данными для простой системы входа/выхода:
где каждая строка имеет {time_stamp} {name} {door_entry} {status}
time_stamp — количество секунд, прошедших с произвольного времени начала.
имя – имя пользователя работника.
door_entry — номер двери, в который вы вошли/вышли
статус — вошли ли они в дверь или вышли из нее.
Текстовый файл большой и содержит около 10 000 записей, подобных этому.
Вопрос: мне интересно, как я могу разложить каждую строку и разделить каждую часть информации на переменную. Так, например, у меня есть класс Worker здесь:
class Worker
{
std::string staffToken;
int doorEntry;
std::string status;
public:
Employee();
};
Я также хочу решить эту проблему с помощью массива. Я знаю, что мог бы использовать вектор или карту, но я хочу решить это с помощью массива. Я создал массив объектов-указателей для класса Worker.
typedef Worker * WorkPtr;
WorkPtr * workers = new WorkPtr[MAX]; //where max is some large constant
for (int i = 0; i < MAX; ++i)
{
workers[i] = new Worker();
}
Цель этой проблемы, которую я создал, заключается в том, что я просто хочу проверить любую необычную активность в этом текстовом файле, в который Worker входит или выходит несколько раз подряд:
Worker
, затем заполняете массив указателей построенными по умолчаниюWorker
s. Вы можете получить те же результаты со значительно меньшими накладными расходами и ручным управлением памятью сWorker workers[MAX];
и без циклаfor
. - person user4581301   schedule 22.08.2017