Я пытаюсь реализовать некоторую математическую функцию, такую как My_AddMod, My_SubMod, My_MulMod, и помещаю результат обратно в vec_long& - введите данные результат.
Когда я вызываю оба свою функцию и 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) и они генерируют одно и то же значение, в чем причина большой задержки или как я могу это исправить?