C++基础知识总结
Ikepi
Java从业者。
展开
-
C++多态性总结
C++面向对象程序中存在三种多态1)对象类型的多态。派生类的对象的类型既可以是派生类,也可以是基类,即一个对象可以属于多种类型。2)对象标识的多态。基类的指针或引用可以指向或引用基类对象,也可以指向或引用派生类对象,即一个对象标识可以属于多种类型,它可以标识多种对象。在对象标识符定义时指定的类型称为它的静态类型,而在运行时实际标识的对象的类型称为它的动态类型。3)消息的多态。一个可以发原创 2017-03-12 09:39:38 · 649 阅读 · 0 评论 -
C++动态绑定
绑定分为两种:静态绑定、动态绑定。静态绑定是在编译时根据对象标识符的静态类型绑定,早绑定。动态绑定是在运行时根据对象标识符的动态类型绑定,是晚绑定。C++是一个注重程序效率的语言,由于采用动态绑定的程序效率有时不高,因此C++默认的绑定方式是静态绑定。在C++语言中,当我们使用基类的引用或指针调用一个虚函数将发生动态绑定。原创 2017-03-12 10:21:15 · 262 阅读 · 0 评论 -
c++强制类型转换:dynamic_cast、const_cast 、static_cast、reinterpret_cast
dynamic_cast: 通常在基类和派生类之间转换时使用,run-time castconst_cast: 主要针对const和volatile的转换. static_cast: 一般的转换,no run-time check.通常,如果你不知道该用哪个,就用这个。 reinterpret_cast: 用于进行没有任何关联之间的转换,比如一个字符指针转载 2017-03-12 11:17:53 · 210 阅读 · 0 评论 -
IP协议,TCP、UDP的一些基础知识
OSI七层网络结构:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层;每一层的作用如下:物理层:通过媒介传输比特,确定机械及电气规范(比特Bit)数据链路层:将比特组装成帧和点到点的传递(帧Frame)网络层:负责数据包从源到宿的传递和网际互连(包PackeT)传输层:提供端到端的可靠报文传递和错误恢复(段Segment)会话层:建立、管理和终止会话(会话协议数据原创 2017-04-06 22:52:28 · 343 阅读 · 0 评论 -
C++11标准下STL的容器分类
第一种:顺序容器1、vector:可变数组。支持快速随机访问。在尾部之外的位置插入或删除元素可能很慢;2、deque:双端队列。支持快速随机访问。在头尾位置插入/删除速度很快;3、list:双向链表。只支持双向顺序访问。在list任何位置进行插入/删除操作速度都很快;4、forward_list:单向链表。只支持单向顺序访问。在链表任何位置进行插入/删除操作速度都很快;5、ar原创 2017-03-15 14:58:25 · 3051 阅读 · 0 评论 -
static与const的作用
static关键字的作用:1、在类中的一个成员变量是static时,该变量被所有该类的实例对象所共同拥有,它的改变对该类的实例对象是可见的,也就是说它不属于某个特定的对象,而是属于这个类;2、类中的静态成员函数不属于某个对象,而是属于整个类,不接受this指针,只能访问static成员变量。3、在一个函数中定义一个static变量,则该函数就有了状态。该变量只在函数第一次调用时初始化,原创 2017-04-02 15:49:52 · 431 阅读 · 0 评论