andy8496 发表于 2025-2-9 00:16:56

两个module互相USE

有两个module会编译到同一个dll中被一个program同时use, 如果这两个module一定要互相USE对方中的一些子程序或者函数,有没有啥子好的办法?

kyra 发表于 2025-2-9 10:00:21

把 module a 和 module b 中需要共同使用的部分抽取成 module c,然后 a use c , b use c

andy8496 发表于 2025-2-9 23:41:45

kyra 发表于 2025-2-9 10:00
把 module a 和 module b 中需要共同使用的部分抽取成 module c,然后 a use c , b use c ...

嗯,这是最佳方案。但是如果抽取不便,有没有办法互相use呢?

kyra 发表于 2025-2-10 16:47:25

也没有啥更好(方便、通用)的办法了。

可以尝试把 module a (或/和 module b,反之)的函数都定义成接口,实现都放入 submodule asub 中。
然后 b use a , asub use b。

工作量也差不多,但是更优雅一些。

andy8496 发表于 2025-2-12 00:08:02

kyra 发表于 2025-2-10 16:47
也没有啥更好(方便、通用)的办法了。

可以尝试把 module a (或/和 module b,反之)的函数都定义成接口 ...

多谢!我再想想怎么办。
页: [1]
查看完整版本: 两个module互相USE