std::print()は独自の構造体やクラスに対するオーバーライドのstd::to_string()はいちいちstring型の一時インスタンスを生成するし、特定クラス向けオーバーライドが困難
組み込みやゲームなどでシビアなタイミング依存のログ出力に耐えられるのはoperator<<()であり、string型の一時インスタンスを大量生成するstd::format()系は論外。