The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск p2p-мессенджера Communist 1.4"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Выпуск p2p-мессенджера Communist 1.4" +1 +/
Сообщение от n00by (ok), 25-Июн-22, 17:22 
Пара нюансов:
  {
        std::fstream f;
        std::vector<std::tuple<std::string, std::string, std::string>> wsz;
        if (std::filesystem::exists (filepath))
          {
        f.open (filepath, std::ios_base::in);
        while (!f.eof ())
          {
            std::string line;
            getline (f, line);
            if (line != "")

https://github.com/ProfessorNavigator/communist/blob/8373173...

После проверки и перед открытием файл может быть удалён. В данном случае ничего страшного не случится из-за проверки f.eof (), но в общем-то filesystem::exists() лишняя.

Поскольку писать в поток не собираетесь, можно использовать ifstream.

Сравнение std::string с "" приведёт у неявному вызову конструктора. Можно обойти, проверив наличие содержимого строки вызовом line.empty().

Из этих мелочей читатель может сделать вывод, что автор не очень знаком с Си++, тогда как от Профессора ожидается код на уровне Кнута, Морриса и Пратта. Здесь Вы предупреждаете, что не программист, на фоне некоторых профессиональных баш-разработчиков выглядит шикарно, но не github подобного не увидел.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск p2p-мессенджера Communist 1.4, opennews, 25-Июн-22, 09:38  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру