Compartilhar via


Seqüência de caracteres e i/O de formatação (C++ moderno)

Os iostreams C++ são complicada para usar a cadeia de caracteres formatada E/S.Como alternativa, você pode usar Boost.Format as bibliotecas de aumento C++, mesmo que seja diferente do padrão.Você pode baixar qualquer biblioteca Aumento de aumento do site.

Algumas vantagens de Boost.Format são:

  • Com segurança: com segurança, e gera uma exceção de para por exemplo, a especificação de poucos ou muitos itens.

  • Extensível: Funciona para qualquer tipo que pode ser passado.

  • Conveniente: Posix padrão e cadeias de caracteres de formato semelhantes.

Embora Boost.Format é compilado em C++ iostreams, que são seguros e extensíveis, não são otimizados de desempenho.Quando você precisar otimização de desempenho, considere C printf e sprintf, que são rápido e fácil de usar.No entanto, não são extensíveis ou vulnerabilidades de segurança.(As versões de segurança existirem, mas têm uma pequena penalidade de desempenho.Para obter mais informações, consulte printf_s, _printf_s_l, wprintf_s, _wprintf_s_l e sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l).

O código a seguir demonstra alguns dos recursos de formatação de aumento.

    string s = str( format("%2% %2% %1%\n") % "world" % "hello" );
    // s contains "hello hello world"  
 
    for( auto i = 0; i < names.size(); ++i )
        cout << format("%1% %2% %|40t|%3%\n") % first[i] % last[i] % tel[i];
    // Georges Benjamin Clemenceau             +33 (0) 123 456 789
    // Jean de Lattre de Tassigny              +33 (0) 987 654 321

Consulte também

Outros recursos

Guia de programação C++ moderno

Referência de linguagem C++

Referência da biblioteca C++ padrão