Southmountain Ответов: 3

Хорошо ли смешивать printf() и cout stream?


когда я кодировал программу на C++, иногда я смешивал ее с помощью printf() и cout stream.
это хорошая практика?

Я пытаюсь получить совет от Вас, гуру и экспертов, и посмотреть, нужно ли мне изменить свои привычки.

Что я уже пробовал:

таким образом, я делал это много раз и чувствую, что это не проблема для небольших примеров тестирования...

3 Ответов

Рейтинг:
21

OriginalGriff

Выбор одного или другого - это нормально, хотя cout является ли "шаблон дружественным", в отличие от printf - но смешивать их, вероятно, не очень хорошая идея, так как вы используете две разные буферные системы для вывода на одно и то же устройство, поэтому, если потоки не будут сброшены вручную между использованием, возможно, что выходы могут быть "случайно смешаны" до некоторой степени.

Честно говоря, вам, вероятно, следует придерживаться cout для кода C++ и printf смешивание их будет выглядеть странно, если у вас нет очень веской причины - и некоторые люди будут предполагать, что вы не знаете, что делаете, основываясь только на этом.


Southmountain

спасибо, ОГ!

Рейтинг:
2

Patrice T

Цитата:
когда я кодировал программу на C++, иногда я смешивал ее с помощью printf() и cout stream.
это хорошая практика?

Нет, это не очень хорошая практика !
выберите 1 и придерживайтесь выбора, никогда не смешивайте их..


Southmountain

Спасибо!

Рейтинг:
12

CPallini

Я не считаю это хорошей практикой, но это просто личный вкус.
Производительность, однако, может быть проблемой. Смотрите, например Основные рекомендации C++: повышение производительности с помощью Iostreams - ModernesCpp.com[^].


Southmountain

спасибо за хорошую ссылку:)

CPallini

Добро пожаловать.

Shao Voon Wong

Хорошая связь!

CPallini

:-)