C ++标准多次使用适配器一词:


分配器适配器(std::scoped_allocator_adaptor
容器适配器(std::queuestd::priority_queuestd::stack
迭代器适配器(std::reverse_iteratorstd::move_iterator


该词本身似乎未在标准中定义。我当时以为这个词是用来指代设计模式的,但是似乎在adapter设计模式中,适配器应该只适应接口,而不是行为。

问题:因此我想知道:


C ++标准中适配器的大致定义是什么?
它是否与适配器设计模式相对应?
如果不是,那么与C ++标准中的适配器(适配器,代理,外观,装饰器...)最匹配的设计模式是什么?

最佳答案

“适配器”一词在某种技术上,设计模式上没有使用。它被用作英语单词:一种可以适应的事物。不需要比这更严格的定义。

容器适配器修改容器的接口。迭代器适配器修改迭代器的接口。依此类推。您真的在想太多。

09-25 17:45