gpt4 book ai didi

c++ - 如何在插件系统中正确暴露 API?

转载 作者:行者123 更新时间:2023-11-28 00:11:48 27 4
gpt4 key购买 nike

在下面的类图中,您可以看到我当前的插件/扩展系统方法。我想为扩展提供通用/全局事物的 API。但是公开的 API 应该只包含引用对象的实际功能的一个子集。我的第一个想法是使用接口(interface)。这样做的问题是,一个邪恶的插件可能会将接口(interface)向下转换为内部类并把事情搞砸。 (我应该关心吗?)第二个想法是使用代理模式。目前我同时使用它们。我想这并不是真的必要。但是考虑到二进制兼容性,我如何才能降低这里的复杂性?

enter image description here

最佳答案

如果你想要的插件不会以某种方式破坏你的程序,那么你必须将这些插件作为单独的进程。然后插件在单独的内存空间中运行,并通过管道或套接字与您的应用程序通信。

关于c++ - 如何在插件系统中正确暴露 API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32651769/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com