随笔分类 - C/C++
摘要:在数据结构【二】:简单阻塞队列BlockingQueue的基础上添加权限属性:priority,并控制enqueue时根据priority排序插入.1.定义priority取值范围0~92.dequeue取出priority值最大的节点(最高进先出 largest-in,first-out ).3.若priority相等,则继续遵循FIFO原则注意 :此代码未经生产环境检验,仅供学习参考.PriorityQueue.h#ifndef CUR_PRIORITYQUEUE_H#define CUR_PRIORITYQUEUE_H#include #include struct node{ i...
阅读全文
摘要:在POSIX多线程【一】:简单队列simple queue的基础上使用内部互斥锁和条件变量来控制并发以达到线程安全的目的,其主要用于 [生产者-消费者] 队列.1.BlockingQueue初始化时会确定队列容量(_capacity),如果队列已满(capacity=0),则会阻塞enqueue操作.2.关闭BlockingQueue(调用queue_free)是一个延迟的操作,它会等待所有元素都dequeue,期间,该队列的一切enqueue操作将无效.3.此代码未经生产环境检验,仅供学习参考.BlockingQueue.h#ifndef CUR_BLOCKINGQUEUE_H#define
阅读全文
摘要:简单的FIFO队列实现,非线程安全!1.queue.h :abstract data type queue#ifndef CUR_QUEUE_H#define CUR_QUEUE_H#includestruct node{ int value; struct node * next;};typedef struct queue{ int max,cur; struct node * head, * tail;}queue;extern queue* empty_queue(int _max);extern int queue_free(queue *q);exter...
阅读全文
摘要:一、字符串字面值字符串字面值是一串常量字符,字符串字面值常量用双引号括起来的零个或多个字符表示,为兼容C语言,C++中所有的字符串字面值都由编译器自动在末尾添加一个空字符。字符串没有变量名字,自身表示自身"Hello World!" //simple string literal"" //empty string literal"\nCC\toptions\tfile.[cC]\n" //string literal using newlines and tabs字符字面值: 'A' //single quote:ch
阅读全文
摘要:1、指向const对象的指针指向const对象的指针就是一个指针,不能通过它来修改它所指向的对象的值· 声明方法:const int *p;const对象在初始化后是不允许对其值进行修改的,因此,我们不能用一个普通指针指向一个const对象,即下面的赋值会引起编译错误:const int i = 1;int *p = &i;否则的话,我们就可以利用普通指针来修改一个const对象的值,那么const也就毫无意义了。正确的方法是利用一个指向const对象的指针来获取const对象的地址:const int i = 1;const int *p = &i;比如:const
阅读全文
摘要:def : #pragma comment( comment-type [,"commentstring"] )#pragma comment(lib,"GM_Decoder.lib")comment-type 是一个预定义的标识符,指定注释的类型,应该是compiler,exestr,lib,linker之一。commentstring是一个提供为comment-type提供附加信息的字符串,Remarks:1、compiler:放置编译器的版本或者名字到一个对象文件,该选项是被linker忽略的。2、exestr:在以后的版本将被取消。3、lib:放
阅读全文
摘要:什么是lib文件,lib和dll的关系如何(2008-04-1819:44:37)(1)lib是编译时需要的,dll是运行时需要的。如果要完成源代码的编译,有lib就够了。如果也使动态连接的程序运行起来,有dll就够了。在开发和调试阶段,当然最好都有。(2)一般的动态库程序有lib文件和dll文件。lib文件是必须在编译期就连接到应用程序中的,而dll文件是运行期才会被调用的。如果有dll文件,那么对应的lib文件一般是一些索引信息,具体的实现在dll文件中。如果只有lib文件,那么这个lib文件是静态编译出来的,索引和实现都在其中。静态编译的lib文件有好处:给用户安装时就不需要再挂动态库了
阅读全文

浙公网安备 33010602011771号