- edited description
FAQ: Format::str()
Issue #313
open
(-) Variadic templates
- https://dou.ua/lenta/articles/auto-parameters-of-cplusplus17-templates/?from=comment-digest_post&utm_source=transactional&utm_medium=email&utm_campaign=digest-comments
- http://www.gotw.ca/publications/mill19.htm
- http://accu.org/index.php/journals/1539
- http://accu.org/index.php/journals/1553
- http://zverovich.net/2012/12/12/a-better-string-formatting-library-for-cplusplus.html
- http://zverovich.net/2013/09/07/integer-to-string-conversion-in-cplusplus.html
- https://accu.org/index.php/journals/2486
- Boost Format
- Loki::SafeFormat
- SafeFormat
- FastFormat
- tinyformat
- POCO format
- QString::arg
- C# String.Format
- Python string.format
- Sformat
- Folly::Format
- Catch::toString Catch::toString
- fmtlib
- https://github.com/thenfour/LibCC/blob/master/libcc/stringutil.hpp
- https://github.com/Ptomaine/nstd/blob/master/include/external/wire/wire.hpp
- http://www.learncpp.com/cpp-tutorial/12-10-printing-inherited-classes-using-operator/
- https://www.vtk.org/doc/release/5.0/html/a03414.html
- %c --- char
- %hh --- signed char (synomous with char)
- %hhu --- unsigned char
- %h --- short
- %hu --- unsigned short
- %d --- int
- %u --- unsigned int
- %lu --- unsigned long (including size_t, which is returned by sizeof())
Features:
-
Безопасность: типобезопасный и создает исключение для ошибок, например задание слишком малого или слишком большого числа элементов.
-
Расширяемый: работает для любого типа, который может быть передан в потоке.
-
Удобство: стандартный POSIX и подобные строки формата.
template<class T>
auto
operator << (
std::ostream &a_os,
const T &a_value) -> decltype(a_value.print(a_os), a_os)
{
a_value.print(a_os);
return a_os;
}
Comments (63)
-
reporter -
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - changed title to String::format()
- changed component to Core
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - changed status to open
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
- changed title to Format::str()
- changed version to 1.0
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - changed component to Format
-
reporter - edited description
-
reporter - changed title to FAQ: Format::str()
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
-
reporter - attached log.h
-
reporter - edited description
-
reporter - edited description
-
reporter - edited description
- Log in to comment