Ada_Ru форум

Обсуждение языка Ада

[ada_ru] вызов ф-и с подкл. модуля

Оставить новое сообщение

Сообщения

mustberemove
[ada_ru] вызов ф-и с подкл. модуля
2018-07-19 13:49:35
прошу помочь.
main содержит основной функционал, например ф-ю print(s : string).
нужно чтобы подключаемые модули могли вызывать эту ф-ю в тасках.
m1.adb
...
task body timer is
  loop
    print("test");
  end loop;
...
procedure init ({{{print}}}) is
...
---
main.adb
with m1;
...
with mn;

m1.init({{{print}}});

к сожалению я не могу просто передать указатель на функцию аргументом в init, потом сохранить ее и
использвать в таске. что посоветуете?
Maxim Reznik
Re: [ada_ru] вызов ф-и с подкл. модуля
2018-07-20 13:38:30
Добрый день,

Если это статическая функция, то проще
* вынести ее в отдельный пакет,
* сделать "with этот-пакет;" в "подключаемом модуле",
* а в main оставить только запуск инициализации

Кстати main может быть дочерним модулем пакета, как например configure-driver.adb тут:

https://github.com/reznikmm/matreshka/tree/master/tools/configure

Всех благ

PS А это не Ваш блог случайно? Очень интересно!
https://fil-andrey.blogspot.com/
Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти