- 主题:各位巨师, c++工程中的全局API一般用什么模式编写?
一个很大的c++库, 有很多对象, 现在需要操作这些对象, 需要搞出一些公共的API来,
比如createXXObject, destroyXXObject这种, 这些api一般是写成对象的静态函数, 还是
直接写成C API? 还是写一个专用的global 静态类?
哪一种更优雅?
--
FROM 120.244.224.*
namespace自然是有.
【 在 hgoldfish (老鱼) 的大作中提到: 】
: namespace 啊。
--
FROM 120.244.224.*
interface那个 不就是插件吗?
facade是什么?我查查
【 在 DoorWay 的大作中提到: 】
:
: 对象之间有关系,首先考虑facade,封装成一个或几个接口供客户用。这样内部复杂,使用简单。
:
: 对象之间无关系,像Opencv那样的松散算法类,不提供全局对象,客户自己创建吧。我见过图形库(引擎)为了调优,内部有全局的缓存的,但并没说明。后来提了bug,也没改,只在接口上说明不支持多线程。
:
--
FROM 221.222.20.*
什么意思?dll的话,才是都一样吧。
【 在 smallball 的大作中提到: 】
:
: 如果导出的是dll接口,这样就死了,不能保证大家的模块都是同一个ABI
: 【 在 fanci 的大作中提到: 】
: : Free function 最佳,最好的做到接口与实现分离。
: : 不过 DestroyXXX 是不应该出现的。你可能应当返回一个 unique_ptr。
--
FROM 221.222.20.*