- 博客(12)
- 收藏
- 关注
原创 C++ STL--map映照容器学习笔记
map映照容器所处理的元素数据,与数据库表的具有键值的记录非常相似,由一个键值和其他若干个数据(映照数据)组成,键值和映照数据之间,可建立一个数学上的映照关系,由此而得映照容器的名称。创建map对象为了操作map的数据,先用map构造函数,创建一个map对象利用默认的less函数对象和内存分配器,创建一个没有任何数元素的map对象。下面实例代码为创建一个空的map对
2014-02-23 10:57:41
770
原创 C++ STL--vector向量容器学习笔记
vector容器是一个线性结构,简单高效。在尾部插入和删除元素,算法时间复杂度为O(1)常数阶。其他元素的插入和删除为O(n)线性阶,其中n为vector容器的元素个数。vector具有自动的内存管理功能,对于元素的插入和删除,可动态调整所占用的内存空间。vector容器可以进行数组一样的元素随机访问,还可以在容器的尾部插入新元素。创建vector对象创建一个空的vector对象,A是
2014-02-15 11:02:57
750
原创 HM中统计LCU的个数
在使用HEVC的过程中,我们使用的视频的尺寸经常不是LCU的整数倍,HM中对LCU的数目又是怎么统计的呢?这个涉及到TComPicSym类下的成员函数create函数,具体贴代码如下:Void TComPicSym::create ( Int iPicWidth, Int iPicHeight, UInt uiMaxWidth, UInt uiMaxHeight, UInt uiMaxDep
2014-01-10 12:41:27
1480
原创 关于HM配置文件的TEncCfg类
关于class TEncCfg{protected: //==== File I/O ======== Int m_iFrameRate;//帧率 Int m_FrameSkip;//跳帧 Int m_iSourceWidth;//宽度 Int m_iSourceHeight;//高度 Int m_conf
2014-01-07 10:25:13
2725
原创 C++ STL--list双向链表容器学习笔记一
list是双向链表的一个泛化容器,支持前向和反向访问list元素等。创建list对象 为了管理双向链表的元素数据,必须先用list容器的构造函数,创建一个list对象。1) list() 创建一个没有任何元素的list对象。 下面实例代码为创建空的list对象l。 list l;2) list(size_type n) 创建一个链接有n个
2014-01-04 15:15:46
980
原创 C++ STL--queue队列容器学习笔记
queue队列也是一个线性存储表,与后进先出的堆栈不同,元素数据在表的一端插入,在另一端进行删除,即构成了先进先出FIFO表。插入的一端成为队尾,删除的一端成为队首。 由于C++ STL的队列泛化,默认使用的是双端队列deque来实现。 实际上,我们使用的是queue队列是否为空,取队首元素,取队尾元素,元素入队和元素出队等功能。 queue队列应用 创建q
2014-01-02 10:19:08
3324
原创 C++ STL--stack堆栈容器学习笔记
堆栈是一个线性表,插入和删除只在表的一段进行,该端称为栈顶,另一端称为栈底。堆栈的元素插入称为入栈,元素的删除称为出栈。由于元素的出与入均在栈顶进行,则堆栈是一个后进先出表,即LIFO(last in first out)。C++ STL的堆栈泛化是直接通过现有的序列容器来实现的,默认的是使用双端队列deque的数据结构,当然也可以用其他线性表vector和list。实际上在我们使用的时候
2013-12-31 12:09:27
891
原创 关于HM打印配置文件中参数的函数
HM软件参考模型可通过配置文件传递参数,在使用的过程会经常要关闭或打开某些功能,则最简单的方法先查看默认的打印的配置参数,若某参数未进行配置,需要配置的话自己在配置文件配置即可;若已经配置,需要关闭,在配置文件中关闭其功能即可。下面为打印配置参数函数Void TAppEncCfg::xPrintParameter(){ printf("\n"); printf("Input
2013-12-30 10:55:22
1585
原创 assert函数
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序的执行。原型定义:#includevoid assert(int expression);assert函数的作用就是对expression判断,若为假,即为0,则向stderr打印错误信息,并通过abort函数来终止程序的运行应用:在HEVC测试模型中有如此语句 assert( m_iPicWidt
2013-12-11 13:48:10
733
1
原创 编译调试HEVC的标准测试模型HM10.0
所使用的操作系统为windows xp,当然win7也可以,所使用的开发环境为Microsoft visual studio 20101.首先找到HM10.0软件存放目录,打开该目录下的Build目录下HM_vc10.sln。2.接下来右键单击解决方案‘HM_vc10’,在出现的列表框中选择“生成解决方案”,编译器会对该方案编译、链接生成可执行文件TAppEncoder.exe,TAppD
2013-12-11 13:19:03
2009
2
转载 windows多线程编程
一、 线程的概念进程是操作系统分配资源的单位,而线程是操作系统调度的单位,进程是静态的,而线程是活动的。与进程一样,线程由两部分构成。1、线程的内核对象(TCB),一个数据结构,操作系统通过它对线程实施管理,同时也是系统用来存放线程统计信息的地方。2、线程堆栈,用于维护线程爱执行代码时需要的所有函数的参数和局部变量。二、 与线程相关的API1、 创建线程HANDLE Cre
2013-12-06 02:02:36
602
转载 windows多进程编程
一、进程的概念进程是是一个正在运行的程序的实例,是系统分配资源的单位(线程是执行的单位),包括内存,打开的文件、处理机、外设等,进程由两部分组成:1、进程的内核对象:即我们通常所讲的PCB(进程控制块),该结构只能由该内核访问,他是操作系统用来管理进程的一个数据结构,操作系统通过该数据结构来感知和管理进程;它的成员负责维护进程的各种信息,包括进程的状态(创建、就绪、运行、睡眠、挂起、死锁等
2013-12-06 01:44:23
741
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人