排序:
默认
按更新时间
按访问量

Texture Buffer Object

Texture Buffer Object(TBO),是这一种特殊的一维纹理。需要和缓存对象关联使用,在着色器中可以访问缓冲对象管理的内存数据。初始化//*********************************************************** //FUNCTION::...

2016-08-02 10:56:45

阅读数:482

评论数:0

Atomic Counter

Atomic Counter是一个缓存对象,存储着一个或者多个unsigned int的变量值。在GLSL着色器有着特定的原子操作(单一的,不可再分的操作)。 atomicCounterIncrement 原子计数+1 atomicCounterDecrement 原子计数-1 Atomic Co...

2016-07-31 15:53:20

阅读数:447

评论数:0

Shader Storage Buffer Object

Shader Storage Buffer Object是GLSL着色器的buffer,不同于uniform buffer在着色器不可修改,shader storage buffer是可读可写的。修改的内容给其他着色器调用或者应用程序本身。初始化 m_UniformBlockData.uLi...

2016-07-31 12:39:30

阅读数:611

评论数:0

Uniform Buffer Object

uniform 变量是着色器和应用程序之间共享数据的桥梁。uniform buffer是GPU上的内存空间,从应用程序传递数据到GLSL程序。uniform buffer object 主要优势是可以在不同的GLSL着色器中分享数据,注意uniform buffer在GLSL中是只能读不能修改。U...

2016-07-31 11:32:40

阅读数:518

评论数:0

Jekyll 多说评论

Jekyll默认是支持Disqus评论功能,我也比较喜欢Disqus。但是因为国内使用Disqus必须翻墙,其次国内大部分程序员都使用多说,其互动性交流讨论更强。 多说多说评论插件系统可以集成与Wordpress,Hexo,,Jekyll各种网站和博客中。因为集成了微博,QQ,微信,人人网,豆瓣...

2016-07-13 00:19:38

阅读数:818

评论数:0

Jekyll 自动生成文章

当使用Jekyll写文章的时候,你肯定不想麻烦的创建文本,修改文本后缀名,再加文本头加上yml语法开头。所以这时候你肯定想到的是写个脚本简化操作,程序员不就是为偷懒而写代码吗?可以使用Rake来解决这个问题。RakeRake,即Ruby Make, 使用ruby开发代码构建工具。 安装rake ...

2016-07-11 11:32:15

阅读数:944

评论数:0

Jekyll 组装

初步认识Jekyll之后,需要搭建自己的博客系统。可以fork别人的 jekyll 主题。Jekyll 主题 ,列举了一些美观的主题,任选你满意的一个即可。安装主题 git clone 主题仓库的git cd 目录 jekyll serve 如此简单高效地搭建了一个博客。下面介绍一些必要插件。语法...

2016-07-09 02:13:07

阅读数:243

评论数:0

初识Jekyll

JekyllJekyll是一个使用Ruby编写的静态站点生成工具,使用Liquid模板渲染引擎,支持Markdown和Textile标记语言,并且可以为所有以 .html、.markdown、.textile扩展名结尾的文件使用YAML配置,内置语法高亮功能。而GitHub的Pages服务可以为每...

2016-07-07 01:25:19

阅读数:238

评论数:0

Jekyll搭建本地环境

Jekyll使用git作为博客存储的搭建工具,Jekyll是一个静态的网站,优势是不担心流量和排版问题。不好的是不存在评论等插件系统,不过后期也可以解决。本文无干货分享,仅记录搭建过程。 安装git::git tools 安装Ruby: ruby 安装RubyGems 安装DevKit:DevKi...

2016-07-06 01:57:45

阅读数:286

评论数:0

Boost asio

asio(asynchronous input and output) 表示异步输入输出,是基于操作系统提供的异步机制,异步数据处理表示触发后不需要等待完成,期间可以执行其他任务,而且不要求使用多线程和锁定,有效避免了条件竞争,死锁等。asio主要用于网络通信方面,支持TCP,UDP,ICMP等网...

2016-07-04 10:09:11

阅读数:1440

评论数:0

Boost serialization

序列化(serializtion)是指把对象信息转换成可以存储或者通过网络连接传输格式的过程,然后在本地或者在另一个计算机环境中可以重构出原有的对象信息是指反序列化。前言本文只介绍通过boost serialization存储的优势,先通过例子简单明白。假如现在你是一个学校学生系统管理员,你需要保...

2016-07-03 11:29:48

阅读数:315

评论数:0

Boost xpressive 正则表达式

正则表达式能方便处理文本问题,比如验证,匹配,查找,替换等。而boost xpressive提供动态和静态方式,静态方式类似于boost.spirit语法分析器,使用操作符重载生成编译器的表达式对象,可以在编译器进行正则表达式的语法检查。动态方式以字符串作为表达式对象,在运行时进行语法检查和处理。...

2016-06-04 15:04:56

阅读数:568

评论数:0

Boost string_algo

Boost提供了字符串处理算法,如大小写无关比较,修剪,特定模式的子串查找等。而且它处理的对象不一定是string,可以是符合boost.range要求的容器。string_algo 还有一些命名规则: 前缀 i: 表明大小写不敏感 后缀_copy : 算法不变动输入,返回处理结果的复制,否则算法...

2016-05-29 12:51:08

阅读数:410

评论数:0

STL stack

stack栈是一种先进后出的数据结构,记得大学时期的计算器就是使用栈的数据结构实现,当然这种数据结构使用场景居多。Constructor stackstd::stack<int> first; std::stack<int> second(first); std::stac...

2016-03-28 22:43:12

阅读数:183

评论数:0

STL map

stl中的map和set一样,都是关联性容器,内部实现是红黑树,所以检索速率高效。不同的是,map的数据形式是键值对,即Key-value。而且需要注意的是在map中,key值唯一,并默认会根据key的字典序进行升序排序。数据插入map添加数据可以有四种方式,分别是通过pair组合成键值对的形式,...

2016-03-28 22:17:27

阅读数:214

评论数:0

STL list

STL中的list是序列容器,内部实现方式是双向链表,而链表的优势在于插入和删除元素效率高,但是随机访问元素相比vector数组的形式就低,所以读者在具体实现项目的时候,可以考虑因素选取。函数说明 list explain push_back 增加一元素到链表尾 push_fro...

2016-03-11 23:20:34

阅读数:304

评论数:0

STL set

stl中的set是关联性容器结构,内部实现是采用红黑树的平衡二叉树,在set容器中每个元素的值唯一,即如果插入两个相同的数,后面的会被忽略,不会插入set容器。并且,set的元素会自动排序,默认排序方式从大到小的方式,当然可以自定义排序方式。注意,set容器中元素的值不能直接被修改。插入元素不同于...

2016-03-09 23:29:02

阅读数:515

评论数:0

STL vector

STL 最常见使用最多的是vector,它能容纳任何数据类型,因为它是模板实现,所以自定义的结构体,也是可行。内部实现是以数组形式,所以开辟的内存空间是连续的,并且vector中operator了[]符号,可以像数组一样访问数据。但是需要注意的是,这不是安全的,加入超过了vector的实际长度空间...

2016-03-08 23:11:29

阅读数:234

评论数:0

C++ mutable

mutable 英语翻译是易变的,性情不定的。常看到用来修饰成员函数变量,表示这个函数可以被修改,即使这个变量在const函数中,mutable修饰的变量也能被修改,从而忽略const的限制。#include <iostream>class CMutable { public: ...

2016-03-06 21:14:33

阅读数:246

评论数:0

C++ volatile

volatile英文的翻译是不稳定的,在C++中关键字声明表明其后变量值可能被改变,但是声明后,每次取值都是都是到内存中取值,从未防止编译器优化。A volatile specifier is a hint to a compiler that an object may change its v...

2016-03-05 21:52:26

阅读数:212

评论数:0

C++ inline

在阅读别人的开源源码时,经常发现一些函数前加了关键字inline,上网查了下,这是内联函数的声明方式。 其主要的特点省去函数调用的开销,提高代码执行效率。 为什么能省去函数调用的开销?内联函数是以复制代码为代价来提高效率的,也就是在程序编译阶段,注意是在程序编译阶段,把内联函数体复制到调用点的...

2016-03-05 20:35:01

阅读数:233

评论数:0

python 修改vs工程属性

有时候,在学习新技术的时候,或者在基于测试用例的开发新应用的时候,需要写很多工程,这些工程的属性配置基本都是一样,如,include头文件路径,lib路径,lib的input名字。新建一个工程,需要重写非常麻烦,vs能配置一个通用的,但是其他工程中又不需要这些的环境,所以突发想法写个脚本批处理vs...

2016-02-23 12:03:40

阅读数:543

评论数:0

C++ 回调机制

回调函数回调机制,函数A的形参包含一个函数指针,函数B传入函数A中。在函数A的函数体中,满足了一定的条件后调用函数B的过程,就是回调机制。而函数B就是回调函数。 回调函数的使用场景?某函数在某个时间或者某个事件下执行,但是确定的时间我不知道,只知道会调用这个函数,那么可以使用回调函数。它被触发可...

2016-02-20 20:32:05

阅读数:279

评论数:0

Boost property_tree 解析配置文件

在日常的开发系统中,不可避免的会解析配置文件,因为使用配置文件更直观,而且修改配置文件就不用再编译代码,当工程很大的时候,编译代码会是一件很痛苦的事。不同的需求的配置文件不同,Boost提供了一个property_tree来解析.xml,.ini,.json,.info四种格式配置文件。 .xm...

2016-01-27 22:12:24

阅读数:1040

评论数:0

C++ 单例模式

单例模式Singleton(),应该是设计模式中最简单的一种模式,表明在整个程序执行周期内,类的实例对象只能存在一个。虽然很简单,但是应用场景却是很多,比如windows的任务管理器;windows的回收站,在整个系统运行中,回收站一直维护着一个实例;应用程序的日志应用,一般都何用单例模式实现,这...

2016-01-22 17:12:52

阅读数:327

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭