我的项目有问题。 链接包和任务可见性的问题。
in bufor1.ads
package bufor1 is
task type Bufor is
entry Przyjmij(Wyrob: in Typ_Wyrobow; Numer: in Integer);
entry Wydaj(Zestaw: in Typ_Zestawow; Numer: out Integer);
end Bufor;
end bufor1;
在另一个广告文件中,我想像这样调用Wydaj函数:
with bufor1; use bufor1;
...
bufor1.Bufor.Wydaj(Rodzaj_Zestawu, Numer_Zestawu);
导致错误:
在表达式中无效使用子类型标记或调用
我是ADA的新用户。提前感谢您的时间。 问候。
答案 0 :(得分:4)
您正在尝试调用task type
,而不是任务对象。
要么使它成为一个任务对象(匿名任务类型):
task Bufor is
或创建任务对象:
foo : bufor1.Bufor;
...
foo.Wydaj(Rodzaj_Zestawu, Numer_Zestawu);