条款38:通过复合塑膜出has-a或"根据某物实现"
2010-03-19 18:31
423 查看
1、has-a
Person class(类)示范了 has-a(有一个)的关系。一个 Person object(对象)has a(有一个)名字,一个地址,以及语音和传真电话号码。
2、is-implement-in-terms-of
假设你需要一个类的模板来表现相当小的 objects(对象)的 sets,也就是说,排除重复的集合。你决定让你的新的 Set template(模板)从 list 继承。Set 的 member functions(成员函数)可以极大程度地依赖 list 和标准库的其它部分已经提供的机能,所以只要你熟悉了用 STL 编程的基本方法,实现就非常简单了。
意思是一个 Set 对象可以 be implemented in terms of a list object(是根据一个 list 对象实现的)
class Address{...}; class PhoneNumber{...}; class Person{ ... private: std::string name_; Address address_; PhoneNumber voiceNumber_; PhoneNumber faxNumber_; };
Person class(类)示范了 has-a(有一个)的关系。一个 Person object(对象)has a(有一个)名字,一个地址,以及语音和传真电话号码。
2、is-implement-in-terms-of
假设你需要一个类的模板来表现相当小的 objects(对象)的 sets,也就是说,排除重复的集合。你决定让你的新的 Set template(模板)从 list 继承。Set 的 member functions(成员函数)可以极大程度地依赖 list 和标准库的其它部分已经提供的机能,所以只要你熟悉了用 STL 编程的基本方法,实现就非常简单了。
template<class T> // the right way to use list for Set class Set { public: bool member(const T& item) const; void insert(const T& item); void remove(const T& item); std::size_t size() const; private: std::list<T> rep; // representation for Set data };
意思是一个 Set 对象可以 be implemented in terms of a list object(是根据一个 list 对象实现的)
相关文章推荐
- 条款38:通过复合塑膜出has-a或"根据某物实现"
- 条款38 通过复合塑膜出has-a或"根据某物实现"
- 条款38 通过复合塑膜出has-a或"依据某物实现"
- [翻译] Effective C++, 3rd Edition, Item 38: 通过 composition(复合)模拟 "has-a"(有一个)或 "is-implemented-in-terms-of"(是根据……实现的)
- [EffectiveC++]item38:通过复合塑膜出has -a 或“根据某物实现出”
- Effective C++ 条款38 通过复合塑模出has-a或"根据某物实现出"
- Effective C++ -----条款38:通过复合塑模出has-a或“根据某物实现出”
- 条款38:通过复合塑模出has-a和根据某物实现出
- 条款38:通过复合塑模出has-a或“根据某物实现出
- 条款38:通过复合塑模has-a或“根据某物实现出”
- 读书笔记《Effective C++》条款38:通过复合塑模出has-a或“根据某物实现出”
- effective C++ 条款 38:通过复合塑模出has-a或“根据某物实现出”
- 条款:38:通过复合塑模出has-a或“根据某物实现出”
- Effective C++:条款38:通过复合塑模出has-a或“根据某物实现出”
- 《Effective C++》读书笔记之item38:通过复合塑模出has-a或“根据某物实现出”
- 【38】通过复合塑模出Has-A 或根据某物实现出
- Effective C++:条款38:通过一个复杂的模具has-a要么“基于一些实现”
- 条款38、根据复合塑模has-a或“根据某物实现出”
- 条款38:通过聚合设计has-a或者is-implemented-in-terms-of
- Item 38:通过组合表示"拥有"或"以...实现"的关系 Effective C++笔记