Я пытаюсь реализовать некоторые математические функции, как My_AddMod, My_SubMod, My_MulMod и поместить результат обратно в vec_long & - данные типа результат.Замедлить код без использования NTL функции результата
Когда я звоню как функцию шахты и NTL и используя результат NTL как:
long tmpt_My = My_AddMod(long a, long b, long n); //(a+b)%n
long tmpt_NTL = AddMod(long a, long b, long n); //function from NTL
vec_long& result[i] = tmpt_NTL; //choosing result from NTL_function
Он работал хорошо и быстро, однако, если я использую результат My_function:
long tmpt_My = My_AddMod(long a, long b, long n); //(a+b)%n
long tmpt_NTL = AddMod(long a, long b, long n); //function from NTL
vec_long& result[i] = tmpt_My; //choosing result from My_function
Он работал хорошо, но вызвал большую задержку в коде.
При печати значения и типа данных tmpt_NTL
и tmpt_My
они имеют одинаковое значение и тип данных long
.
Поскольку обе функции вызываются (так что это не имеет ничего общего с временем выполнения My_function), и они генерируют одно и то же значение, в чем причина большой задержки или как я могу ее исправить?