C++项目之酒店客房管理系统架构——设计模式应用场景详解(下)
2023-12-31 05:04:29
5. 迭代器模式(Iterator Pattern):用于遍历客房列表。通过定义一个迭代器接口,可以遍历客房列表并访问每个客房的属性和状态。
代码中,Iterator
是抽象迭代器,定义了迭代器的基本操作,包括判断是否还有下一项和获取下一项的方法。RoomIterator
是具体迭代器,实现了具体的迭代器操作。Aggregate
是抽象聚合类,定义了获取迭代器的接口。RoomCollection
是具体聚合类,实现了获取迭代器的接口,并且在内部维护了一个存储客房信息的容器。
#include <iostream>
#include <vector>
#include <string>
// 抽象迭代器,定义了迭代器的基本操作
class Iterator {
public:
virtual bool HasNext() = 0;
virtual std::string Next() = 0;
};
// 具体迭代器,实现了迭代器的具体操作
class RoomIterator : public Iterator {
private:
std::vector<std::string> rooms;
int position;
public:
RoomIterator(std::vector<std::string> rooms) : rooms(rooms), position(0) {}
bool HasNext() override {
return p
文章来源:https://blog.csdn.net/xcksj888/article/details/135300864
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!