摘要:
开始学习opengl,但是看opengl编程指南不同版本之间使用了一堆不同的库,概念名称全都搅起的,越看越糊涂,遂整理的一下opengl相关的一些库的名词, 才发现是不同时期不同版本不断发展的结果。 现在比较流行的搭配主要是freeglut+glew和glfw+glew,如果想做简单的测试或者自己实 阅读全文
摘要:
iconv 编码gb2312转utf8 转码失败的坑 使用背景 项目中使用thrift进行C 程序调用c++接口,其中的协议是通过json进行传输的,由于默认thrift使用utf8进行传输,而C 和c++程序都默认使用多字节的编码方式,所以在传输前就需要对编码进行utf8的转换,而在接收处理的时候 阅读全文
摘要:
准备 安装 "vscode" ,可直接下载deb包进行安装,完成后安装C/C++ for Visual Studio Code插件,安装后重启(最新1.3版本以后不需要重启)。 生成目录和文件 新建文件夹【test】,并新建文件helloworld.cpp文件,文件中内容如下, include in 阅读全文
摘要:
使用git连接本地和远程github 网上很多github的流程比较乱,自己尝试整理了一下,主要是步骤较为清晰,如果有不清楚的可详细进行搜索对比 1. 申请和设置github https://github.com/ 该过程请自行参考 2. 使用gitbash设置用户名和邮箱 打开gitbash,输入 阅读全文
摘要:
transform 网上很多都只介绍了还原角度和缩放的参数,但是没有就偏移量的计算,自己还原了一下公式的意义,进行了公式的反推,具体的推到过程就不详叙了,可以参看w3c的矩阵含义。 直接上干货。 ~~~ function getElementCss(e, name) { var st = windo 阅读全文
摘要:
按照网上的命令都为安装php5-fpm 和 php5-sqlite, 但是发现无法找到软件,可能是系统版本比较高的缘故,原来的版本已经不支持了。 经过努力华找到如下安装方法 sudo apt get install php fpm (默认安装的是php7) sudo apt get install 阅读全文
摘要:
查找时间管理软件的时候发现了superProductivity这个程序,使用electron进行开发,于是看了一下介绍,手痒了,尝试进行环境搭建,下一步慢慢补齐前端知识吧 nodejs安装 nodejs的版本更新较快,所以可能一个系统上存在多个版本,管理工具也可以多种多样,我选择使用nvm进行安装, 阅读全文
摘要:
中介者模式是关于数据交互的设计模式,该模式的核心是一个中介者对象,负责协调一系列对象之间的不同的数据请求,这一系列对象成为同事类。如房产中介(简直不想提它),买房的卖房的,租房的放租的都到房产中介那里去登记。如果有卖房的就会通知买房的去买房,如果有放租的就会通知租房的去租房。所有的事物都是通过中介进 阅读全文
摘要:
访问者模式是一种将数据操作和数据结构分离的设计模式,可以说是面向数据密集型的一种设计方式,数据的结构相对稳定,有明显的分层和分类,而对数据对象的相关操作进行分组、分析等二次加工,这些操作都是由访问者来执行的,而不是将这些放到被访问的数据对象中,方便了操作方法的扩展。 作用 封装一些作用于某种数据结构 阅读全文
摘要:
状态模式是根据其状态变化来改变对象的行为,允许对象根据内部状态来实现不同的行为。内容类可以具有大量的内部状态,每当调用实现时,就委托给状态类进行处理。 作用 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把 阅读全文