12-19 零散
2018-06-05 本文已影响0人
szn好色仙人
-
make_move_iterator
:将普通迭代器转为移动迭代器。定义在头文件iterator中,声明在命名空间std中。 -
function位于头文件functional中,声明在命名空间std中,用于存储一个可调用对象。
- 面向对象程序设计的核心思想是数据抽象,继承,动态绑定。
- 通过使用数据抽象,我们可以将类的接口和实现分离
- 使用继承,可以定义相似的类型并对其相似关系建模
- 使用动态绑定,可以在一定程度上忽视相似类型的区别,而以统一的方式使用它们的对象。
-
对于代码中的某个节点来说:如果基类的公有成员是可访问的,则派生类向基类的转换也是可使用的,反之则不行。
-
命名空间可以定义在几个不同的部分。形如:
namespace NsTest{}
可能定义了一个名为NsTest的新命名空间,也可能是为已经存在的命名空间添加新的成员。如类的声明和定义应该分开置于不同的文件,则当类位于命名空间时就可方便的声明与定义了。 -
对于命名空间中名字的隐藏规则来说有一个重要的例外:当我们给函数传递一个类类型对象、指针、引用时,除了在常规的作用域中查找外还会查找实参类所属的命名空间。