Если вы хотите использовать только большие целые числа, вы можете использовать bigint
, который можно включить в файл:
use bigint;
или просто ограниченный объем:
{
use bigint;
...;
}
Если вам нужны большие числа с плавающей точкой, а также большие целые числа, вы можете использовать прагму bignum
таким же образом. В любом случае, они немного замедлят вашу программу (или значительно, если вы много занимаетесь математикой), поэтому вы должны использовать их только в тех частях, где они вам действительно нужны. Тем не менее, быстрее не лучше, чем правильно. :)
Если вы хотите очень точно контролировать, какие числа используют математику big*
, вы можете использовать базовые классы, которые их реализуют, и создавать объекты самостоятельно, а не применять семантику big*
ко всему. Посмотрите, что Math::Big*
модулей.
Я говорю об этом подробнее в главе «Бенчмаркинг» Освоение Perl , поскольку в наше время компьютеры слишком быстры, чтобы использовать факториал в качестве медленной функции, и мы также добавили раздел о больших числах в следующую Эффективное программирование на Perl, 2-е издание .