Вопрос Практика языка C++

Начинающий
Статус
Оффлайн
Регистрация
28 Фев 2020
Сообщения
18
Реакции[?]
2
Поинты[?]
0
Всем добрый день(вечер), недавно поймал себя на такой мысли что по мере изучения плюсов, мне не хватает практики, не мог бы кто-нибудь написать задачу, котороя требует или когда то требовала решения? Желательно не из геймхакинга, не хочу туда возвращаться, уровень +- нормальный, желательно связанное что то с бд sql и Imgui либ.
 
Начинающий
Статус
Оффлайн
Регистрация
28 Фев 2020
Сообщения
18
Реакции[?]
2
Поинты[?]
0
Вафля
Участник
Статус
Оффлайн
Регистрация
24 Янв 2019
Сообщения
945
Реакции[?]
350
Поинты[?]
165K
Всем добрый день(вечер), недавно поймал себя на такой мысли что по мере изучения плюсов, мне не хватает практики, не мог бы кто-нибудь написать задачу, котороя требует или когда то требовала решения? Желательно не из геймхакинга, не хочу туда возвращаться, уровень +- нормальный, желательно связанное что то с бд sql и Imgui либ.
Привет(салам) заебашь мне сапёра 40х40 60 мин, при нажатии на мину должно сняться ограничение напряжения на мой блок питания и всё нахуй взорвалось
 
feel irl
Участник
Статус
Оффлайн
Регистрация
21 Дек 2018
Сообщения
677
Реакции[?]
294
Поинты[?]
16K
Всем добрый день(вечер), недавно поймал себя на такой мысли что по мере изучения плюсов, мне не хватает практики, не мог бы кто-нибудь написать задачу, котороя требует или когда то требовала решения? Желательно не из геймхакинга, не хочу туда возвращаться, уровень +- нормальный, желательно связанное что то с бд sql и Imgui либ.
Задач много, а справишься ли?
Нужно написать многопоточный thread-safe wait-free exception-safe синглтон глобал логгер, который умеет логировать в cout,cerr файлы и так далее.
Нужно сделать наиболее простой интерфейс хендлера, который будет выглядеть как-то так
C++:
class ILoggerHandle {
public:
    virtual int log(std::string_view) const = 0;
    virtual ~ILoggerHandle(){}

};
Важно, чтобы логгер умел:
1) Сохранять точное время конкретного лога.
2) Логи были в последовательны относительно времени.
3) По какой-то волшебной константе времени компиляции можно удалять из файла логи, если они устарели более чем на n единиц времени.
4) Логать в различные файлы одновременно или по отдельности, при этом предоставить удобный интерфейс для этого.
5) Иметь разные уровни( debug,trace, error, etc), можно взять из spdlog.
Нужно написать минимальный фронтенд для си-подобного языка. Лексер и парсер соответственно.
Минимальные требования:
Контекстно-независимый лексический анализатор (То есть, чтобы обработать данную лексему нам не нужно знать, какая была лексема до этого или будет после этого).
Объявление\определение целочисленных, с плавающей точкой, символьных и стороковых литералов. Операторы +,-,/,*. Объявления и определения функций и их вызов(естественно, с аргументами), if\else, switch case.
Умение строить абстрактное синтаксическое дерево(AST).
Обработка ошибок в лексемах, обработка ошибок в парсере(Грубо говоря: вывод о том, что что-то не так).
Ну, если желаешь ещё задачек — пиши.
 
Сверху Снизу