![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
技术应用
文章平均质量分 78
allen_lou
喜欢计算机,篮球,台球,音乐,钢琴
展开
-
符号编码-ASCII、Unicode、Unicode big endian、UTF-8之间的关系
1. ASCII 码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位( bit )有 0 和 1 两种状态,因此八个二进制位就可以组合出 256 种状态,这被称为一个字节( byte )。也就是说,一个字节一共可以用来表示 256 种不同的状态,每一个状态对应一个符号,就是 256 个符号,从 0000000 到 11111111 。 上个世纪转载 2008-11-02 22:44:00 · 2101 阅读 · 0 评论 -
装饰器(Decorator)模式
Decorator设计模式是典型的结构型模式(在GOF的那本模式的Bible中将模式分为:1.创建型模式;2.结构型模式;3.行为模式三种)。它的主要用意是:动态地为对象添加一些额外的功能。(记住上面两种颜色的词汇,理解装饰器模式的精髓所在!)下面是GOF的《Element of re转载 2008-11-24 15:40:00 · 258 阅读 · 0 评论 -
策略(Strategy)模式
Strategy模式也叫策略模式,是由GoF提出的23种软件设计模式的一种。 Strategy模式是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法选择交由客户端决定(策略)。Strategy模式主要用来平滑地处理算法的切换。概要:- S转载 2008-12-08 15:41:00 · 209 阅读 · 0 评论 -
Java反射机制
Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。Java反射机制主要提供了以下功能: 1.在运行时判断任意一个对象所属的类 2.在运原创 2009-02-25 10:44:00 · 350 阅读 · 1 评论 -
设计模式学习(增加中...)
策略模式的定义定义了算法族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。所谓算法族,使用了同一接口,分别封装实现的类的集合叫做算法族。 例如:设计一个鸭子游戏,有的鸭子会飞,有的鸭子不会飞(玩具鸭子);有的鸭子会叫,有的鸭子不会叫,所以分别用FlyBe原创 2008-12-12 17:06:00 · 226 阅读 · 0 评论 -
设计模式原则
OO基础 抽象 封装 多态 继承 OO原则 1、 找出应用中可能需要变化指出,把它们独立出来,不要和那些不需要变化的代码混在一起;2、 针对接口编程,而不是针对实现编程;3、 多用组原创 2008-12-20 20:45:00 · 216 阅读 · 0 评论 -
成员函数作为线程函数的一种方法
由于this的原因,类的成员函数无法作为线程函数,只能将static成员函数作为线程函数,但是static成员函数不能访问非static变量,要想访问static变量,那么我们可以使用下面例子中的方法:class TestThread{public: TestThread(); ~TestThread();原创 2009-08-17 09:46:00 · 866 阅读 · 1 评论 -
Python学习
Python语言,我以前学过,但是由于好久没用,所以忘得差不多了,最近又重新学习,语法已经通了,只剩下类库的应用了。总的感觉就是Python真的很简捷、灵活,而且具有很丰富和强大的类库。举例如下:>>> a,b=3,5>>> a,b=b,a就这么简单就可以实现交换两个数。 >>> [x for x in range(21) if x%2==0]原创 2008-06-05 23:46:00 · 266 阅读 · 0 评论 -
数组(一维、二维、三维)的动态申请及用vector的表示方法
1. 变长一维数组这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做:#includeusing namespace std;int main(){ int len; cin>>len; //用指针p指向new动态分配的长度为len*sizeof(int)的内存空间 i原创 2007-10-05 21:44:00 · 1569 阅读 · 2 评论 -
C99标准(转)
在ANSI标准化后,C语言的标准在一段相当的时间内都保持不变,尽管C++继续在改进。(实际上,Normative Amendment1在1995年已经开发了一个新的C语言版本。但是这个版本很少为人所知。)标准在90年代才经历了改进,这就是ISO9899:1999(1999年出版)。这个版本就是通常提及的C99。它被ANSI于2000年三月采用。 在C99中包括的特性有:转载 2007-07-20 16:43:00 · 330 阅读 · 0 评论 -
正则表达式小结
正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来:(1)检查一个串中是否含有符合某个规则的子串,并且可以得到这个子串;(2)根据匹配规则对字符串进行灵活的替换操作。 小结如下:/ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,n 匹配字符 "n"。/n 匹配一个换行符。序列原创 2007-07-21 17:26:00 · 295 阅读 · 0 评论 -
C#中的消息
在C#中,程序采用了的驱动采用了事件驱动而不是原来的消息驱动,虽然.net框架提供的事件已经十分丰富,但是在以前的系统中定义了丰富的消息对系统的编程提供了方便的实现方法,因此在C#中使用消息有时候还是大大提高编程的效率的。 1 定义消息 在c#中消息需要定义成windows系统中的原始的16进制数字,比如 const int WM_Lbutton原创 2007-07-23 14:17:00 · 358 阅读 · 0 评论 -
游戏引擎
我们常常会碰见“引擎”(Engine)这个单词,引擎在游戏中究竟起着什么样的作用?它的进化对于游戏的发展产生了哪些影响?一、什么是引擎我们可以把游戏的引擎比作赛车的引擎,大家知道,引擎是赛车的心脏,决定着赛车的性能和稳定性,赛车的速度、操纵感这些直接与车手相关的指标都是建立在引擎的基础上的。游戏也是如此,玩家所体验到的剧情、关卡、美工、音乐、操作等内容都是由游戏的引擎直接控制的,它扮演着中场发动机转载 2007-07-26 23:28:00 · 556 阅读 · 0 评论 -
如何编写代码才能使得效率高
一、排版: 1.关键词和操作符之间加适当的空格。 2.相对独立的程序块与块之间加空行 3.较长的语句、表达式等要分成多行书写。 4.划分出的新行要进行适应的缩进,使排版整齐,语句可读。 5.长表达式要在低优先级操作符处划分新行,操作符放在新行之首。 6.循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分。 7.若函数或过程中的参数较长,则要进行适当的划分。转载 2007-08-10 23:12:00 · 275 阅读 · 0 评论 -
浅谈软件破解
很多软件使用起来都需要注册码,本文简要给出了一般的破解步骤,只是在于抛砖引玉。步骤一 检测壳 所谓“壳”就是专门压缩的工具。 这里的压缩并不是我们平时使用的RAR、ZIP这些工具的压缩,壳的压缩指的是针对exe、com、和dll等程序文件进行压缩,在程序中加入一段如同保护层的代码,使原程序文件代码失去本来面目,从而保护程序不被非法修改和反编译,原创 2007-08-15 18:04:00 · 399 阅读 · 0 评论 -
什么是Ajax
1.Ajax的定义:Ajax不是一个技术,它实际上是几种技术,每种技术都有其独特这处,合在一起就成了一个功能强大的新技术。 2.Ajax包括:XHTML和CSS 使用文档对象模型(DocumentObjectModel)作动态显示和交互 使用XML和XSLT做数据交互和操作 使用XMLHttpRequest进行异步数据接收 使用JavaScript将它们绑定在一起 Ajax(Asynchronou原创 2007-08-16 17:25:00 · 407 阅读 · 0 评论 -
C++类型转换运算符的使用
C++提供了四个新的类型转换运算符:const_cast dynamic_castreinterpret_cast static_cast 使用方法:cast_operator (object) 类型转换操作符 要转换的类型 要进行转换的对象① dynamic原创 2007-08-19 17:59:00 · 540 阅读 · 0 评论 -
键盘键与虚拟键码对照表
字母和数字键 键 键码 A 65 B 66 C 67 D 68 E 69 F 70 G 71 H 72 I 73 J 74 K 75 L 76 M 77原创 2007-08-18 11:02:00 · 454 阅读 · 0 评论 -
Windows变量与C++变量的类型对应
wtypes.hC++Managed ExtensionsCommon language runtimeHANDLEvoid *void *IntPtr, UIntPtrBYTEunsigned charunsigned char原创 2007-09-12 00:28:00 · 443 阅读 · 0 评论 -
用动态申请虚拟内存求任意数阶乘的C++实现
计算较小数的阶乘程序很容易编写,对于较大数的阶乘的计算一般做法是使用数组,但是数组的长度有限,本程序采用动态申请虚拟内存空间的方法,优点是使用的不是物理内存,而是虚拟内存,申请的范围更大。具体程序如下:#include #include using namespace std;int lfac(int *a, int n){ int sum,sc; for(int i=0;i {原创 2007-09-18 00:43:00 · 469 阅读 · 0 评论