Лето наступает, и группа друзей и я готовимся к нему:)
Мы решили создать произвольные целые числа без знака точности во время компиляции.Мы хотели бы предоставить набор целых алгоритмов (функций) с библиотекой.Мы видели несколько запросов на такую библиотеку ( SoC2010 , C ++ 0x Список пожеланий стандартной библиотеки ).Кроме того, обычно с этим запрашивается обычное время выполнения bigint
, но мы не хотим вдаваться в трудности управления памятью.Идея пришла ко мне из библиотеки под названием TTMath , к сожалению, эта библиотека работает только на определенных платформах, потому что Assembly широко использовалась в библиотеке.Мы хотели бы написать стандартную библиотеку, в зависимости от стандартной библиотеки C ++ и Boost.Кроме того, мы хотели бы использовать доступные средства C ++ 0x в текущих компиляторах, таких как пользовательские литералы и другие.Это технически сделало бы библиотеку нестандартной на некоторое время, но мы думаем, что новые стандарты станут официальными.
Ваши советы по всему процессу, включая проектирование, реализацию, документацию, ремонтопригодностьбиблиотеки более чем приветствуются.Мы группа студентов и молодых выпускников, которые ищут что-то интересное летом, но мы видим, что Boost полон гуру, и мы не хотим забывать что-то слишком очевидное.Мы общаемся в режиме онлайн, поэтому нет общих досок: (
Вот пример использования такой библиотеки:
typedef our_namespace::uint<512> uint512_t;
// declaring an unsigned int with 512 bits width.
// After that the user is supposed to deal with it just like the native types.
Спасибо,