Я как-то подсознательно предполагал, что речь идёт об обработки списков, поэтому имел в виду, что
T — это тип элемента списка, а
P, соответственно — указатель на него. В общем случае можно считать, что
P — просто тип объекта (правда, при этом возникают нюансы — например, этот тип должен как-то хранить информацию о следующем элементе).
Префикс/постфикс в данном случае не важны, но я считаю, что следует писать префикс всегда, кроме тех случаев когда постфикс нужен.
Код:
T* ff(T* item) {
return item->next;
}
main() {
brent(ff, item);
}
Марк писал(а):
Есть необходимость…
Вам придётся создать класс, который будет хранить вместе с текущим значением случайной величины ещё и значение seed генератора, и каждый раз его обновлять. Алгоритмы (и Флойда, и Брента) не предполагают побочного эффекта вызываемой функции, а
random() — типичный пример функции с побочным эффектом.