![]() |
1
5
我将在前几天在这里引述另一个问题的答案 :
只需确保您的新API包含 预定的 功能和 依照惯例的 或 原版的功能。此外,还应确保其呈现“适合目的”的再呈现。窥视一下在FOS项目中C++库的C++封装,例如C++的GTK/GTK(它只封装了前者)。 如果API损坏,请修复它并提交修补程序。。。与第三方打交道(我假设访问源代码意味着他们不会介意这一点)。。。您可以重新编写一些API,使其“包装友好”,并建议它们合并一些更改。如果有问题,由你来解决。
|
![]() |
2
2
我唯一能补充的是 Aiden's response 您还应该将需要显式初始化和终止的代码替换为 RAII 技术。当我面对在API上提供外观时,我似乎总是遇到这样一个类:
问题是
我的目标是确保我展示/创建/包装的任何API都能与我们现有的编码风格兼容。我还尝试将API转变为一种比目前更具OO风格的风格。我看过很多我称之为 就像我上面介绍的那个。如果你想让它们真正融入C++,那么就要真正面向对象,并利用C++给你的优势:
|
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |