LINUX.ORG.RU

История изменений

Исправление paramon, (текущая версия) :

Не знаю как они устроены, но применять умею.

Вот пример шаблонной функции: https://ibb.co/j8xFRgV

рис1 вызывается шаблонная функция, входной аргумент int со значением 311, выходное значение шаблонной функции печатается в консоль.

рис2 печатается размер T, после чего T переводится в массив байтов, и обратно, и выходит return из функции.

Вывод такой:

4 // размер T
311 // значение T

Транслируется вот в это: https://pastebin.com/NdLj1FSt

Так же можно задавать аргументы у функции в виде структур, у которых какой нибудь элемент будет шаблонным.

void fn(struct { T values[]; int length; } argument_a, int argument_b);
Возвращаемое значение тоже можно так задать.

Исходная версия paramon, :

Не знаю как они устроены, но применять умею.

Вот пример шаблонной функции: https://ibb.co/j8xFRgV

Транслируется вот в это: https://pastebin.com/NdLj1FSt

Так же можно задавать аргументы у функции в виде структур, у которых какой нибудь элемент будет шаблонным.

void fn(struct { T values[]; int length; } argument_a, int argument_b);
Возвращаемое значение тоже можно так задать.