摘要:
双端队列容器是一种放松了访问权限的队列。除了从队列的首部和尾部访问元素外,标准的双端队列也支持通过使用下标操作符"[]"进行直接访问。 它提供了直接访问和顺序访问方法。其头文件为<deque>。 1)双端队列容器的构造函数 有4中形式的构造函数: deque();//构造size()为0的双端队列容 阅读全文
摘要:
向量容器属于顺序容器,用于容纳不定长线性序列(即线性群体),提供对序列的快速随机访问(也称直接访问)。这一点与c++语言支持的基本数组类型相同,但基本数据类型不是面向对象的。而面向对象的向量是动态结构,他的大小不固定,可以在程序运行时增加或减少。 向量容器可以用来实现队列、栈、列表和其他更加复杂的结 阅读全文
摘要:
顺序容器类以逻辑线性排列方式存储元素,在这些容器类型中的元素在逻辑上被认为是连续的存储空间中存储的。顺序容器可用于存储线性群体。 在关联容器类中,元素的存储和检索基于关键字和元素与其他元素之间的关系,与顺序容器类的元素存储和检索方式完全不同。 对顺序容器的访问分为顺序或直接(也称随机)两种。 容器类 阅读全文
摘要:
有效地利用已有的成果,将经典的、优秀的算法标准化、模块化,从而提高软件的生产率,是软件产业化的需求,为了实现这一需求,不仅需要面向对象设计思想,而且需要泛型程序设计思想。 c++语言提供的标准模板库(standard template library,STL)便是对象对象程序设计和泛型程序设计(Ge 阅读全文
摘要:
同样可以用数组或链表来存储队列中的元素。由于队列操作不同于一般线性群体操作的特殊性,需要专门涉及队列类。 队列也有三种基本状态:一般状态、对空、队满。 无论采用那种数据结构,队列类的数据成员都应该包括:队列元素、队头指针、队尾指针。 队列类中函数成员应该能够实现下列基本操作:初始化、入队、出队、清空 阅读全文
摘要:
栈是一种线性群体,因此栈的数据可以用数组或链表来存储。 由于栈的访问特性,故直接用数组类和链表类来解决栈的问题是不合适的,而是需要专门设计栈类。 要完整地保存栈的信息,栈类的数据成员至少应该包括栈元素和栈顶指针。由于栈元素即可以用数组也可以用链表来存放,栈类的结构也就有了两种:基于数组和基于链表。基 阅读全文
摘要:
链表是一种动态数据结构,可以用来表示顺序访问的线性群体。 链表的第一个结点称为头结点,最后一个结点称为尾结点,尾结点的后继指针为空(NULL)。 1、结点类 链表的结点包括数据和指针域,是链表的基本构件。结点的数据域用于存放群体中元素的内容。即可以是若干个基本类型的数据,也可以是自定义类型的数据,甚 阅读全文
摘要:
ROS客户端提供一些列库文件用于用户开发。它利用许多ROS概念并使它通过代码可以获取。 下面是ROS程序中的接口 ROSCPP客户端(c++客户端) 首先新建一个包 然后catkin_make一下 在新建的包目录下,建立一个消息文件msg 上面定义的消息需要生成消息的头文件foo.h以便以后我们可以 阅读全文
摘要:
1、launch 参数说明: pkg为节点的功能包,type为需要运行的那个节点,name为节点的名字,后面的参数可选 举个launch文件的例子: 在工作空间中新建一个包: 然后再回到工作空间中去编译: 再在包目录下创建一个launch文件: 把type=turtlesim_teleop_key改 阅读全文
摘要:
1、线性群体的概念 线性群体中的元素次序与其位置关系是对应的。在线性群体中,又可按照访问元素的不同方法分为直接访问、顺序访问和索引访问。 对可直接访问的线性群体,我们可以直接访问群体中的任何一个元素,而不必首先访问该元素之前的元素。 对顺序访问的线性群体,只能按元素的排列顺序从头开始依次访问各个元素 阅读全文