std::endl
may cause an unnecessary flushstd::endl
используется вместо более эффективного \n
Этот дефект отмечает использование std::endl
в операциях I/O и позволяет вам использовать более эффективную альтернативу, \n
.
std::endl
вставляет новую строку (\n
) сопровождаемый операцией сброса. Например:
std::cout << "Some content" << std::endl;
std::cout << "Some content" << '\n' << std::flush;
std::endl
, неявная операция сброса может значительно уменьшать эффективность программы. Поскольку операция сброса неявна, в случае проблемы эффективности, она затруднит, чтобы отследить первопричину проблемы.Используйте \n
ввести новую строку по мере возможности.
Если вы требуете операции сброса вместо std::endl
, используйте \n
сопровождаемый явной операцией сброса, например:
std::cout << "Some content" << '\n' << std::flush;
Повышения производительности могут варьироваться на основе компилятора, реализации библиотеки и среды, которую вы используете.
Группа: Производительность |
Язык: C++ |
Значение по умолчанию: Off |
Синтаксис командной строки:
STD_ENDL_USE |
Удар: низко |