自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (19)
  • 收藏
  • 关注

原创 Python知识点整理(异常篇)

异常对异常的最好描述是: 它是因为程序出现了错误而在正常控制流以外采取的行为. 这个行为又分为两个阶段: 首先是引起异常发生的错误, 然后是检测(和采取可能的措施)阶段.

2016-07-03 14:25:21 455

原创 Python知识点整理(基础篇)

Python表达式列表推导式(list comprehension)语法:[expr for iter_var in iterable] 或 [expr for iter_var in iterable if cond_expr]说明:第一种语法:首先迭代iterable里所有内容,每一次迭代,都把iterable里相应内容放到iter_var中,再在表达式中应用该iter

2016-07-03 11:25:11 706

原创 Python知识点整理(函数篇)

1.作用域global语句用于声明一个全局变量this_is_global = "abc"def func(): global this_is_global this_is_global = "global" print this_is_global func()print this_is_global嵌套作用域Python2.1之前只允许两个作

2016-07-02 12:10:23 929

原创 WebKit的一些笔记3(基础篇)

Webkit渲染基础概述Webkit是一个渲染引擎,而不是浏览器,它专注于网页内容的展示,其中渲染是其中的核心功能之一。DOM称作文本对象模型,简单来说,是对HTML或者XML等文档的结构化表示方法,通过这种方式,用户可以通过接口访问HTML页面任何元素的相关属性,并可以对DOM进行相应的操作。对于DOM树的可视节点,WebKit需要创建相应的RenderObject节点,这些节点

2015-07-22 12:46:45 671

原创 WebKit的一些笔记2(基础篇)

WebKit渲染网页WebKit内核我们可以通过下图了解这个过程是如何完成的:首先通过网络把网页内容载入到本地存储;HTML解析器把它解释为DMO树,CSS解析器解析CSS部分,JS代码交给JS引擎去处理。几部分共同构成新的内部绘制模型;接着计算布局,也就是各个元素的大小和位置信息,最后由绘图模块完成图像的绘制。网页渲染过程主要分为三个过程:

2015-07-21 20:44:37 519

原创 WebKit的一些笔记1(基础篇)

概述WebKit是一个开源的网页渲染引擎项目,项目包括两部分:第一部分是WebCore,包含对HTML,CSS等很多W3C规范的实现;第二部分是狭义上的WebKit,主要是各个平台的移植并提供相应的Web接口,这些接口提供操作和显示网页的能力。WebKit2是相对于狭义的WebKit而言,它是一个新的API层,最主要的变化在于将网页的渲染至于单独的进程,接口层则在另外一个进程,

2015-07-21 15:12:21 610

转载 设计模式的六大原则

1.单一职责原则定义:一个类只负责一项职责。问题由来:一个类T有两个职责P1和P2,当修改职责P1的时候,有可能会导致原本正常的P2也发生故障。解决方案:遵循单一职责原则,建立类T1和类T2,分别完成职责P1和职责P2。单一职责原则,即便对于新手程序员,也是很容易遵守的。但是为什么会出现违背这一原则的情况出现呢?原因是有职责扩散。职责扩散就是,由于某种原因,职责P被分为粒度更细的P

2015-06-10 14:02:19 438

原创 工厂模式

1.简单工厂模式简单工厂模式属于创建型模式,又叫做静态工厂方法模式, 但不属于23种GOF设计模式之一。简单工厂模式的实质是由一个工厂类根据传入的参数,动态的决定应该创建哪个 产品的实例,这些产品都有一个共同的父类(虚基类)或接口。1.1角色工厂角色:简单工厂模式的核心,负责实现具体产品的内部逻辑。创建方法可被外界直接调用。抽象产品角色:简单工厂模式创建的所有对象的父类,描述所有实

2015-06-10 13:20:58 410

原创 Effective C++ 学习笔记14

条款14:确定基类有虚析构函数我们可以用静态数据成员和静态函数来处理一个类所拥有的对象数。例如:#include class EnemyTarget {public: EnemyTarget() //初始化方式1 { ++numTargets; } EnemyTarget(const EnemyTarget&) //初始化方式2 { ++numTa

2015-02-17 12:35:18 414

原创 Effective C++ 学习笔记11

条款11:为需要动态分配内存的类(含有指针的类)声明一个拷贝构造函数呃一个赋值操作符请注意下面这段代码:#include class String{public: String(const char* value) { if (value) { int length = strlen(value) + 1; data = new char[lengt

2015-02-16 17:07:02 474

原创 Effective C++ 学习笔记6

条款6:析构函数里对指针成员调用delete添加一个指针成员的流程:1.在构造函数中对指针进行初始化:对内存进行清0操作,然后通过赋值操作符分配新的内存(分配内存,或者赋值0);2.析构函数里头delete指针(空指针也可以直接delete)。如果在析构函数中没有删除指针,它不会表现出明显的症状,不断增长的内存泄露会最终侵蚀你的地址空间。

2015-02-13 17:25:26 446

原创 Effective C++ 学习笔记5

条款5:对应的new和delete要采用相同的形式看下面例子:string* Arr = new string[100];.....delete Arr;这样做的话,Arr[100]指向的至少99个对象没有被成功释放,因为析构函数没有被成功的调用。正确做法是:delete[] Arr;如果没有正确使用相同的形式,结果是不可预测的。使用typedef的同学需要注意下,

2015-02-13 16:49:03 395

原创 Effect C++ 学习笔记4

条款4:尽量使用C++风格的注释第一部分:关于两种注释1.C语言的注释很容易产生错误例如:if(a > b){ /* swap(a, b); /*交换A和B的位置*/ */}这样会使注释提前结束。2.有些老的专门为C语言设计的预处理程序,可能不知道C++风格的注释例如:#define Pi 3.1415926 //圆周率//后

2015-02-13 16:14:35 571

原创 Effect C++ 学习笔记3

条款3:尽量使用new和delete而不用malloc和free原因很简单:malloc和free是C语言的产物,它们并不知道构造函数和析构函数。例子:1.Arr1中有足够10个string对象存放的空间,但是内存里面并没有创建完整的string对象。 string *Arr1 = static_cast(malloc(10 * sizeof(string)));

2015-02-13 15:41:35 475

原创 Effective C++ 学习笔记2

条款2:尽量用而不是注意:这里说的是而不是,两者区别:处于std名空间之下,而处在全局空间下,容易造成名字冲突。1.scanf/printf 的缺陷 1)scanf/printf很轻巧、高效,但是他们不是类型安全的,而且也没有扩展性; 2)scanf/printf需要把变量和控制格式区分开来。它们的弱项正是>>和1)通过运算符函数重载可以处理自定义类

2015-02-13 15:08:31 431

原创 EffectiveC++ 学习笔记1

条款1:尽量使用const和inline而不用#define(尽量使用编译器而不是预处理,方便找错)需要注意的两点:1.定义指针常量的时候a.指针是常量的,要定义成constb.指针所指的类型要定义成const例如:const char* const authorName = "Scott Meyers";2.类中的常量(静态的类常量成员变量)

2015-02-13 12:12:53 434

转载 C/C++编译过程

C/C++编译过程    C/C++编译过程主要分为4个过程  1) 编译预处理  2) 编译、优化阶段  3) 汇编过程  4) 链接程序    一、编译预处理    (1)宏定义指令,如#define Name TokenString,#undef等。 对于前一个伪指令,预编译所要做的是将程序中的所有Name用TokenString替换,    

2014-11-18 09:50:23 550

转载 浅谈C++中指针和引用的区别

指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int *p=&a;int a=1;int &b=a;

2014-11-18 09:42:40 479

原创 C++返回局部变量的指针问题

#include int* zhizhen1(){ int* i = new int(1); return i;}int* zhizhen2(){ int* i; int c = 0; //临时变量被释放了 i = &c; return i;}int main(int argc, char **argv){ int *o1 = zhizhen1(); int *

2014-10-29 20:46:21 787

翻译 OGRE CG教程 (四): 全息衍射图效果

DescriptionAs they are many holo... hologram... and holographic shaders, this one is called "holographe".

2014-08-18 15:54:26 1007

翻译 OGRE CG教程 (三): 渐隐效果

Description

2014-08-18 14:26:42 810

翻译 OGRE CG教程(二): 如何编译CG

If you are a beginner trying to get into .cg you will quickly learn that it is pretty finicky; Much more picky than fixed function. 如果你是一个学习CG的新手,你会很快的发现CG语言是非常讲究的,比其他语言要挑剔的多.If you are running ar

2014-08-15 19:45:57 1004

翻译 OGRE CG教程 (一):OGRE CG 基础

Example 1: Plain TextureExample 2: Texture with modulated colorProgrammatic control of color parameterFurther Reading/Learning

2014-08-15 18:53:23 1597

原创 写OGRE的一点教训

1.新建一个变量的时候,老是爱复制久的变量的初始化过程,导致一些错误.总之复制

2014-04-24 15:51:48 628

原创 OGRE(九)

场景管理器

2014-04-19 18:56:01 785

原创 OGRE(八):Ogre例子中的Character脱离Browser的代码

头文件 Character.h#include "ChracterController.h"using namespace Ogre;class Character: public FrameListener{public: Character() { startup(); loadResources(); setupContent(); setupCont

2014-04-19 14:16:08 998

原创 5.2 Center Selection 中心选址

Input.  Set of n sites s1, …, sn andinteger k > 0.

2014-04-16 22:40:24 3485 3

原创 5.3 The Pricing Method: Vertex Cover (定价法:顶点覆盖)

此处略去吹牛逼的部分。。。。。di

2014-04-16 21:35:52 5366 11

原创 OGRE(七)

#include "OGRE/Ogre.h"#include "OIS/OIS.h"class MyFrameListener:public Ogre::FrameListener{public: bool frameStarted(const Ogre::FrameEvent &evt) { //std::cout<<"Frame Start"<<std::endl;

2014-04-12 18:28:14 700

原创 OGRE(六)

#include "OGRE/Ogre.h"#include "OIS/OIS.h"class MyFrameListener:public Ogre::FrameListener{public: bool frameStarted(const Ogre::FrameEvent &evt) { //std::cout<<"Frame Start"<<std::endl;

2014-04-11 15:17:26 729

原创 OGRE(五)

#include "Ogre\ExampleApplication.h"class Example34FrameListener : public Ogre::FrameListener{private: Ogre::SceneNode* _node; //储存传来的场景节点 Ogre::Camera* _Cam; Ogre::PolygonMode _PolyMode; //

2014-04-10 15:44:06 666

原创 OGRE(四)

1.绘制模式的切换Ogre::PolygonMode _PolyMode;

2014-04-09 22:18:10 642

原创 OGRE(三)

1.帧监听

2014-04-09 18:54:08 762

原创 OGRE(二)

1.创建一个平面

2014-04-08 22:05:38 687

原创 OGRE(一)

1.加载一个模型

2014-04-08 18:44:20 743

原创 OpenGL导入3DS专题

最近一直在研究如何将3D模型导入OpenGL,略微有些进展,在附录部分把它记录下,希望能起到抛砖引玉的作用,有不足的地方,请大家指出

2014-04-04 21:22:40 7029 19

转载 Python基本规范

1.编码    所有的 Python 脚本文件都应在文件头标上 # -*- coding:utf-8 -*- 。设置编辑器,默认保存为 utf-8 格式。2.注释    业界普遍认同 Python 的注释分为两种的概念,一种是由 # 开头的“真正的”注释,另一种是 docstrings。前者表明为何选择当前实现以及这种实现的原理和难点,后者表明如何使用这个包、模块、类、函数(方

2014-03-15 13:16:28 779

转载 Ubuntu12.04下安装numpy and matplotlib(亲测可行)

Ubuntu下安装numpy and matplotlibroot下安装numpy相对简单,以下命令可以完成 apt-get install python-numpyapt-get install python-scipy 安装matplotlib相对复杂一些需要先安装其依赖的包libpng和freetype安装libpng:

2014-02-27 20:15:09 1434

原创 SMO算法草稿

负类正常情况Ei负类一旦越过负支持平面,0负类一旦越过超平面,Ei>1负类一旦越过正支持平面Ei>2正类正常情况Ei>0正类一旦越过正支持平面,-1正类一旦越过超平面,Ei正类一旦越过负支持平面Ei负类在支持平面之间 1正类在支持平面之间 -2

2014-01-15 14:54:41 976 1

原创 分布式大作业p2p聊天室

记录一些遇到的问题于评论。

2013-10-27 16:37:40 2495 19

python-2.7.9.amd64

python-2.7.9.amd64,编译WebKit所需,具体过程可以参考我的博文

2015-07-27

Safari_5.34.57.2.141774554

Safari_5.34.57.2.1417745549.exe,编译WebKit所需,具体过程请参考我的博文

2015-07-27

IE10-Windows6.1-x64-en-us

IE10-Windows6.1-x64-en-us,编译WebKit所需,具体请参考我的博文。

2015-07-27

WebKit-r174650.tar.bz2

WebKit-r174650编译所需要的源码,具体编译过程可以参考我的博文

2015-07-27

WebKitSupportLibrary

编译WebKit使用的WebKitSupportLibrary,具体编译过程可以参考我的博文。

2015-07-27

QuickTimeSDK

编译WebKit使用的QuickTimeSDK,具体编译过程可以参考我的博文。

2015-07-27

黑客与画家 中文文字版

文字版 可以选中的那种哦 自己转换的 还请多多支持 _(:зゝ∠)_

2015-07-06

基于opengl的导入3DS模型和MDL骨骼动画的射击游戏

基于opengl的导入3DS模型和MDL模型的射击游戏 UESTC研一的课设,请同学们不要撞车了 怎么说呢,实现了漫游效果和碰撞检测,代码是基于上次的作为修改,文档和上次的程序都可以在我的下载中找到。 基本上就是仿CS吧,能换枪什么的,凑活看吧。

2014-01-13

P2P 聊天室 c++ 版本 附详细文档

尽管不是所有付出都有回报,但我还是会一如既往的努力。

2013-12-10

win8 开始菜单 插件

win8 插件 绝对给力 给出开始菜单 而且图标能自定义设置

2013-11-10

天猫双11自动亲亲抢红包 绝对好用

自动抢红包 晚上用它抢了好多个 特此分享出来 红包有效期只有11.11一天 大家抓紧了

2013-11-07

王道集训营入营前学习计划

王道集训营入营前学习计划 留着自己看 觉得适合初学者看看

2013-11-07

(中文版)3D数学基础图形与游戏开发

本书内容: 介绍了基础概念,如向量、坐标空间、矩阵、变换、欧拉角、齐次坐标空间、几何图元、相交性检测和三角网格。 读者论论了3D中的方位,包括四元数和对不同表示技术之间的优劣比较。 描述了数学和几何的实际应用示例,提供了一些C++类和不同的矩阵类,每个类都完成特定的几何任务。 所有基本变换矩阵的完整来历。

2013-11-06

vc++ P2P UDP NAT穿透

vc++ P2P UDP NAT穿透 是没有GUI 但是代码很好 实现单聊

2013-11-06

VC++ 定时器使用的例子 附文档

VC++ 定时器使用的例子 附文档 算是比较好的一个定时器的demo

2013-11-06

类库详解 绝对的中文

找了好久好久好多都是英文版 终于让我找到一个中文版的了

2013-11-06

ADO操作数据库强大封装类

VC ADO 读取数据库的各种集成类 进行的很好的封装

2013-11-06

opengl导入多个3ds模型和场景漫游的方法(代码+文档)

我想这是网络上关于opengl导入模型最全的版本了。在半个月期间,导入模型中遇到了很多问题,最后终于成功导入多个模型。文档附录部分关于模型导入做了比较全的讲解,包括转3ds,如何贴纹理等等。笔者对代码进行了封装,简单几步就可以导入多个模型。还实现了场景漫游。5分绝对不亏,老鸟的话就可以飞过了。编译环境VS2008.

2013-10-28

opengl 红宝书 代码

opengl 红宝书 书中代码 很全 绝对实用

2013-09-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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