3

我的任务是从遗留 C++ 代码库中删除 RogueWave 组件。为此,我尝试围绕现有组件构建包装器,确保代码功能相同,然后选择不同的库(如 boost)粘贴到包装器中。

我遇到的问题之一是大部分代码库都需要指向 RogueWave 对象的指针。我可以创建一个指向原始 RogueWave 对象的虚拟 Wrapper Object 类,但是当代码需要指向原始对象的可修改指针时,我无法弄清楚如何正确包装该 RW 对象的各个部分,例如迭代器项。

任何建议或替代方法的建议?(注意:我的 C++ 有点生疏)

4

2 回答 2

1

适配器模式

桥接模式

如果这些都不起作用:

立面图案

于 2010-08-19T16:00:19.503 回答
1

大约 10 年前我有一个类似的任务,结果证明我们使用 Roguewave 的大部分东西都是 C++ 标准的一部分。在大多数情况下,有一个直接的 C++ 标准数据结构能够替代 Roguewave 的使用。

如果您不能直接替换并且可能使用另一个 3rd 方库或您自己的库,那么 JustBoo 提到的模式将是理想的。

于 2010-08-19T17:45:37.117 回答