boost SHA1学习笔记

摘要: #include #include /* @brief SHA1摘要算法:一种很重要的密码学算法,可将任意长度的文本压缩成20个字节的 独一无二的的摘要(uuid名字生成器使用该算法)*/using namespace boost::uuids::detail;using namespace std;int main(){ sha1 sha; // 声明摘要对象 char* szMsg = "This is a short message!"; //-------------------------- // 向摘要压入文本 //----------------------- 阅读全文
posted @ 2011-01-25 21:18 几百人有爱 阅读(477) 评论(1) 推荐(0) 编辑

boost uuid 学习笔记

摘要: #include #include #include #include #include using namespace boost::uuids;using namespace std;int main(){ //------------------------- // 一些std函数的应用 //------------------------- vector v(16, 7); uuid u; std::copy(v.begin(), v.end(), u.begin()); // 将一个序列复制到另一个序列中(从begin到end) std::fill_n(u.data + 2, 6, 阅读全文
posted @ 2011-01-25 01:28 几百人有爱 阅读(672) 评论(0) 推荐(0) 编辑

lexicographical_compare()按字典序比较函数用法示例(字符串排序)

摘要: #include "algostuff.hpp"using namespace std;void printCollection(const list& l){ PRINT_ELEMENTS(l);}bool lessForCollection(const list& l1,const list& l2){ return lexicographical_compare(l1.begin(),l1.end(),l2.begin(),l2.end());}int main(){ listc1,c2,c3,c4; INSERT_ELEMENTS(c1,1, 阅读全文
posted @ 2011-01-24 00:05 几百人有爱 阅读(444) 评论(0) 推荐(0) 编辑

boost exception 学习笔记

摘要: #include #include #include using namespace std;// 从std和boost,新的导常类就同时有它们两的能力struct both_exception: virtual boost::exception, // 这里要用虚继承 virtual std::exception{};// 定义异常both_exception内部异常信息的数据类型// 这样异常信息就可以是各种类型typedef boost::error_info err_str; void stdException(){ try { int err... 阅读全文
posted @ 2011-01-21 22:32 几百人有爱 阅读(438) 评论(0) 推荐(0) 编辑

追MM与Java的23种设计模式

摘要: 我在Java论坛看到这篇文章,作者以轻松的语言比喻了java的32种模式,有很好的启发作用,但可惜没有给出具体的意思,我就在后边加上了。这些都是最简单的介绍,要学习的话建议你看一下阎宏博士的《Java与模式》一书。 创建型模式 1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修... 阅读全文
posted @ 2011-01-19 12:36 几百人有爱 阅读(112) 评论(0) 推荐(0) 编辑

常用正则表达式

摘要: 验证数字的正则表达式集 验证数字:^[0-9]*$验证n位的数字:^/d{n}$验证至少n位数字:^/d{n,}$验证m-n位的数字:^/d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9]*)$验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$验证非零的正整数:^/+?[1-9][0-9]*$验证非零的负整数:^/-[1-9][0-9]*$验证非负整数(正整数 + 0) ^/d+$验证非正整数(负整数 + 0) ^((-/d+)|(0+))$验证长度为3的字符:^.{3}$验证由26个英文.. 阅读全文
posted @ 2011-01-06 17:33 几百人有爱 阅读(138) 评论(0) 推荐(0) 编辑

GOF Factory method(工厂算法)

摘要: #include using namespace std;// Safe Delete Pointer#define SAFEDELETE(p) if (NULL != p)/{/ delete p;/ p = NULL;/}// base productclass ProductBase{public: ProductBase(void) { } virtual void print() { }};// sub productclass ProductInt :public ProductBase{public: ProductInt(void) { } void print() { c.. 阅读全文
posted @ 2010-12-17 14:02 几百人有爱 阅读(211) 评论(0) 推荐(0) 编辑

(转)Builder模式的误区:将复杂对象的构建进行封装,就是Builder模式了吗?

摘要: 最近重读GOF的《设计模式》,读到Builder模式的时候,发现还是不能领悟;网上搜了下其他人的解释,发现很多人都用错了Builder模式,结构形似Builder,实际上却更像Template、或者FactoryMethod,或者四不像,并没有体现出Builder模式的思想和威力;通过对比学习,也逐渐加深了我对Builder模式的认识,于是就有了这篇文章。0. GOF - Builder模式 下面是GOF对Builder模式的部分阐述,先列出来,用于与后文中的错误案例进行对比。文字很精辟,不易理解;但若真正理解了,会发现这些文字对已经将Builder模式的精髓描述完了。(1) 意图:将一个复杂 阅读全文
posted @ 2010-12-16 17:21 几百人有爱 阅读(252) 评论(0) 推荐(0) 编辑

phong 光照模型。。

摘要: 前些日子 乘着有闲功夫,慢慢的hlsl看了起来,发现以前学的数学知识全用上了,只可惜忘得都差不多了,又要恶补数学了。做了个比较简单的 phong 光照模型。float4x4Scal;float4x4World;float4x4View;float4x4projection;float4x4WorldViewProjection;float3EyePosition;float3LightDir;float4LightColor;structVertexInput{float4Position:POSITION;float2Tex:TEXCOORD0;float3Normal:NORMAL;};. 阅读全文
posted @ 2010-11-13 02:11 几百人有爱 阅读(326) 评论(0) 推荐(0) 编辑

关于骨骼动画及微软示例Skinned Mesh的解析

摘要: 这是我自个写的,第一次发. 没想到这个贴子编辑器极差. 原文是有字体字色的.现在只能清一色了. 版主,发贴的编辑器太难用! 你有必要向上反映一下. 下面的字体是我敲html标记加上的,大家凑和看. 关于骨骼动画及微软示例Skinned Mesh的解析骨骼动画是D3D的一个重要应用。尽管微软DXSDK提供了示例Skinned Mesh,但由于涉及众多概念和技术细节,示例相对于初学者非常复杂,难以看懂。在此,提供一些重要问题评论,以使初学者走出迷局,顺利上手。文中所述都是参照各种资料加上自己的理解,也有可能出些偏差,有则回贴拍砖,无则权当一笑。一 骨骼动画原理原理方面在网上资料比较多,大家都基本明 阅读全文
posted @ 2010-11-08 00:17 几百人有爱 阅读(330) 评论(0) 推荐(0) 编辑