colin

busy to live or busy to die

python实现数组属性

属性的简单用法属性看起来像是对成员进行直接访问,但又可以像函数一样对成员访问进行其他处理,所以属性是一种兼具易用性和数据封装的语言设施。

2015-02-17 11:54:04

阅读数:2426

评论数:0

Python的排序

Python内置函数sorted可以对可迭代对象进行排序,其中有cmp和key两个参数,这两个参数对排序的效率有很大的影响。

2015-02-17 00:26:46

阅读数:1481

评论数:0

如何快速学习一门语言

作者:colin 版权声明:自由转载-非商用-非衍生-保持署名 4月初到新公司,如今已近一个月时间,由于项目的原因,这一个月来我学习了Python,ActionScript,Lua,JavaScript四门新的语言,并大多用于实际项目中。刚开始压力巨大,新项目都用脚本来开发,而且不止一...

2014-05-11 21:44:49

阅读数:1962

评论数:1

cocos2d-x 3.0rc开发指南:Windows下Android环境搭建

安装工具 1. 配置JDK JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 本人的系统是Win7 64位版,但安装的是JDK7,Windows X86版。 假设安装目录在:C:\Pr...

2014-03-21 00:49:56

阅读数:36349

评论数:13

让C++使用极速的FastMM

由于malloc的低效,一直在寻找替换的方案,最后突发其想,封装一个FastMM的DLL作为C++的内存管理器;然后重载全局的new和delete操作符。如上方法执行之后,再跑原来的测试程序,效率果然与FastMM版本的一致了。我原来以为VC版STL的默认内存管理器,会有大量的优化,后来跟进去才发...

2011-12-06 13:47:46

阅读数:2001

评论数:1

龟速的malloc和神速的FastMM

由于在Delphi项目中,要频繁创建和释放大量小对象,因此担心有效率问题,于是打于GetMem.inc看看,发现FastMM对于小块内存作了很多工作,它预置了一组不同大小的内存池,当要创建一块内存时,FastMM找到大小最相近的内存池分配之,内存释放后回收到池中。这样的做法虽有小量内存浪费,但效率...

2011-12-02 17:24:52

阅读数:1988

评论数:2

窗口过程封装的一些实现

 -----------------------------------------------------------------------------------------------------------------作者:  colin微博:  http://weibo.com/jac...

2011-06-13 04:03:00

阅读数:3816

评论数:7

Java语言基础:流类(1)

1.  java通过流的概念来实现数据的输入输出,或叫读写更容易理解一些;下面4个类是所有流的基类,分别处理字节和字符的读写:InputStream: 输入(读)字节流抽象类。OutputStream: 输出(写)字节流抽象类。Reader: 输入(读)字符流抽象类。Writer: 输出(写)字符...

2011-04-05 16:27:00

阅读数:1432

评论数:1

Java语言基础:多线程

<br />1.  有两种方法可以创建并运行一个线程:继承Thread类并覆盖Run方法,Run中的代码就在另一个线程执行。<br />class MyThread extends Thread { MyThread() { // 调用下面代码,...

2011-04-02 01:55:00

阅读数:13834

评论数:75

Java语言基础:RTTI

<br /> 1.  每个类都有一个Class对象,当我们在运行期第一次生成类的实例时,JVM就加载这个类的Class对象,然后用这个Class对象来创建类实例;Class类似于Delphi中的引用类TClass,用于保存类的运行时信息。 2.  Class的static方法f...

2011-03-28 23:51:00

阅读数:6679

评论数:27

Java语言基础:异常机制

<br />1.  抛出异常通过throw new ThrowableClass语法可以抛出一个异常,其中ThrowableClass是一个从Throwable继承的类,或者是Throwable类本身,先看下面的<br />public void proc(){ ...

2011-03-27 21:34:00

阅读数:3194

评论数:7

Java语言基础:抽象类和接口

<br />1.  一个类中的方法如果只有声明没有实现,则称为抽象方法,必须用abstract修饰之;一个有抽象方法的类称为抽象类,也必须用abstract修饰之,但抽象类可以没有抽象方法;抽象类不能被创建:<br />// 抽象类 abstract class A { ...

2011-03-27 02:07:00

阅读数:1798

评论数:7

Java语言基础:对象的初始化

1.  如果基类存在默认构造函数,则在子类构造之前,会先调用基类的默认构造函数:class A { A() { System.out.println("A create"); } } class B extends A { ...

2011-03-26 01:23:00

阅读数:2139

评论数:5

Java语言基础:基本数组类型

<br />1.  一维数组的声明和初始化,分成动态和静态:<br />// 动态创建10个整型,默认初始化为0 int[] a1 = new int[10]; // 静态创建4个整型,并初始化为括号中的值 int[] a2 = {1, 2, 3, 4}; ...

2011-03-25 21:48:00

阅读数:4736

评论数:4

Java语言基础:内部类

<br /> 1.  普通内部类普通内部类的一个最简单的例子:// 外部类 class OutterClass { // 内部类 public class InnerClass { private int i = 0; publ...

2011-03-24 22:29:00

阅读数:13327

评论数:51

Java语言基础:泛型

<br />     我必须承认我不是一个Java程序员,日常开发主要是C++和Delphi,使用Java完全是为了开发Android应用。今天在看Java的泛型,有些方面感到很奇怪,先来看下面的代码:<br />     class Shape {<br />...

2011-03-24 00:04:00

阅读数:1729

评论数:5

Java语言基础:final和static

 1. finalfinal可以修饰类,成员方法,成员变量;表示最终的,不能修改,不能继承的:final类不能被继承,类中的方法默认是final方法,但类中的成员变量不是。final方法不能被子类覆盖,可以这样理解:JAVA中的普通方法等于C++的虚方法,JAVA中的final方法等于C++中的普...

2011-03-23 23:42:00

阅读数:1909

评论数:9

Delphi:两个高效的哈希函数

<br />function BKDRHash(buf: Pointer; count: Integer) : Cardinal; assembler; asm PUSH EBX; XOR EBX, EBX MOV EC...

2010-11-30 21:33:00

阅读数:2562

评论数:0

实用C++函数:取当前模块句柄

<br />当前模块的句柄在程序进入点可以获得,一般做法是保存为一个全局变量,以后使用这个全局变量即可。但有时在写一些比较通用的代码时刚好要用到模块句柄,如果还去访问这个全局变量就破坏了代码的通用性。<br />下面函数可以取得当前模块的句柄,无须保存,随调随得:<b...

2010-11-29 01:26:00

阅读数:2001

评论数:3

用C++实现属性

<br />Delphi和C#的类都提供了“属性”的概念,使得Getter和Setter的方法可以像访问成员一样简单,如下面的Delphi代码:TMyClass =class<br />private<br />    FValue: Integer;<b...

2010-11-21 01:02:00

阅读数:1800

评论数:0

16位图像Alpha混合的实现

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 <object class

2009-06-15 00:50:00

阅读数:2880

评论数:2

Google Chrome 构建指南

首先,配置开发环境:安装VS2005,全部安装,不要只选VC++。安装VS2005 SP1,根椐VS的语言选择安装,这里给出的链接是中文版的。安装Windows SDK 2008,安装完后,执行:开始|所有程序|microsoft windows SDK v6.1|Visual Studio Re...

2009-01-02 23:05:00

阅读数:2313

评论数:0

Ole控件的事件辅助类

Ole控件的事件辅助类林镇群2008-12-6 概述       Delphi对Ole控件作了很好的封装,使用起来要比C++的方便地多,比如想用IE控件,只需要将TWebBrowser拖到窗体上,设置相关属性,处理相关事件,一切和其他控件没有什么区别。       但是使用过程中,我们会发现一个问...

2008-12-06 18:51:00

阅读数:1447

评论数:0

Windows消息

Windows消息从大四开始学习Windows编程,至今已有三年时间,回顾起来,觉得这个学习过程其实就是对消息的理解过程。最初消息给我的感觉就是一种事件通知,而窗口是通知的目的地。当键盘鼠标或者窗口的某些状态改变时,系统包装了一个消息结构,并“找到”处理消息的窗口“发送或投递”给它。有了这一层理解...

2008-03-30 16:08:00

阅读数:2732

评论数:0

随想1

1、好久没有写技术文章,这段时间实在太忙,很多计划都没有办法去做。 2、在VC,Delphi混用的情况下,调试快捷键不设成统一的,用起来实在是麻烦,昨天终于把Delphi的快捷键设成VC模式,那些用了好几年的F9,F7,F8,F5,现在全变了意义了。 3、对于界面库,Delphi程序员是不是也应该...

2008-03-20 10:37:00

阅读数:1873

评论数:3

MFC-GDI绘制

最好的GDI入门教程是《Window程序设计》的第五章,如果你没有任何GDI基础,最好精读这一章,因为本文并不会介绍GDI的方方面面,事实上这也是不可能完成的任务。我只将以前学习GDI时遇到的几个难点拿出来讲讲。GDI对象的用法GDI对象就是画笔,画刷,字体这类资源,以我的经验,GDI对象的管理是...

2007-12-31 14:41:00

阅读数:7219

评论数:3

小巧可爱的MiniDraw

       上文用于演示的程序名叫MiniDraw,也许你已有所察觉――这应该是一个画图程序。不错,我的实验品就是经典的画图程序,并且这几天我已经把它编写出来了。这是一个小巧可爱的画图程序,麻雀虽小,五脏俱全,屏幕截图如下:       从图中可以看出,每个图形就是一个对象,支持各种属性设置,以...

2007-12-27 22:20:00

阅读数:3393

评论数:2

MFC-文档视图

MDI程序       MiniDraw只有一个About对话框,这回要把它变成一个MDI程序,借助于文档视图的威力,并不需要花很大的力气。       MDI由4个类组成:主框架类,由CMDIFrameWnd派生而来,表示程序的MDI父窗口。子框架类,由CMDIChildWnd派生而来,表示程序...

2007-12-17 10:04:00

阅读数:7845

评论数:4

MFC-RTTI

关于RTTI       正如侯杰所说,文档视图是MFC进化为应用程序框架的灵魂,不可否认,这是MFC最为精炒的设计,十多年前数据与表现分离的思想就被应用在这个框架之上。而在文档视图之下,支撑着它的是运行时类型信息(RTTI)。       RTTI允许程序在运行时刻获得类乃至普通类型的信息,这是...

2007-12-15 13:05:00

阅读数:4045

评论数:1

MFC-最简单的MFC程序

       尽管刚接触MFC不久,但其开发模式已初有感受,抛开复杂的应用不谈,想想我们通常怎样来写一个简单的MFC程序。也许浮现在你脑海里的是程序向导,类向导,资源编辑器,以及程序代码,此时你大概会灵光一现,说MFC程序=向导+资源+代码。看起来确实是这样,但有没有可能更简化一些呢,比如把向导去...

2007-12-13 09:39:00

阅读数:10689

评论数:8

MFC-对话框与数据交换

       对话框是非常重要的一种窗体,就我看过的应用,除了MDI程序,对话框比文档视图框架用得更多。原因大概有两个,首先对话框可以利用资源编辑器来编辑,这就有了一点快速开发的感觉,尽管比真正的快速开发弱得多;其次,对话框提供一种叫数据交换的方法,让控件与某种数据类型关联起来,比如Edit控件与...

2007-12-10 10:12:00

阅读数:6156

评论数:3

MFC-窗口封装

        MFC对Window作了一层比较浅的封装,其创建过程基本与SDK差不多。它简化了窗口的注册,并将窗口过程与类关联起来;后者是比较重要的封装,它使消息能够分流给“类的窗口过程”,既而通过消息映射,才能到达各个处理函数。       使用传统的SDK来创建一个窗口有点繁琐,伪代码是这样...

2007-12-08 12:22:00

阅读数:4803

评论数:0

MFC-命令分派

       MFC的命令大体上由两类界面元素引发,一种是菜单项,另一种是如按钮,复选框等的通用控件。从消息来看,其实就是处理WM_COMMAND消息。尽管命令消息的进入点仍然是CWnd::OnWndMsg,不过MFC让它走了另一条路,即OnCommand。       让命令消息作另外处理是有原...

2007-12-04 12:28:00

阅读数:2968

评论数:0

C++实现事件机制

       委托是一种很实用的设计方法,一个模块可以将某些事情委托给其他实体去做,而对于模块本身不需要知道受委托的实体是什么,它只知道这个实体遵循某种接口规范。回调函数可以认为是一种委托,它在Windows编程中起了非常重要的作用。       委托的一个重要应用是事件机制,假设有类A负责加载数...

2007-12-03 10:30:00

阅读数:12395

评论数:1

MFC-消息分派

前言       由于工作需要,这几天学了一点MFC,在AFX里看到很多熟悉的东西,如类型信息,序列化,窗口封装和消息分派。几乎每个界面库都必须提供这些基础服务,但提供的手法却千差万别。MFC大量地借用了宏,映射表来实现,而VCL则更多的在语言级别上给与支持。这其实是很容易理解的,因为C++是一个...

2007-11-28 11:53:00

阅读数:8295

评论数:9

实现编辑控件的增量搜索

实现编辑控件的增量搜索LinZhenqun2007-10-20前言       增量搜索(又叫渐进搜索)是我比较喜欢的一种搜索方式,这种一边输入一边搜索的模式常常能更快的找到关键字,特别是在关键字记得不全的时候。大部分代码编辑器都提供了增量搜索的功能,比如Delphi,VS。在Delphi,我用得...

2007-10-20 14:03:00

阅读数:3185

评论数:2

绘制玻璃效果

 绘制玻璃效果LinZhenqun2007-10-5 前言       现代软件对于用户体验的要求越来越高,特别是对于界面,当人们不再喜欢泛味的经典风格时,渐变效果的界面出来了,这一点在Office2003可以体显出来。但现在,渐变效果似乎也不能满足审美要求了,越来越多的软件尝试用玻璃效果来呈现,...

2007-10-05 17:43:00

阅读数:5518

评论数:9

基于栈的对象

基于栈的对象C++的对象是基于栈的,你可以像普通数据类型一样声明它,访问它的成员,调用它的方法,然后由编译器自动清理栈现场,C++的对象更像一个增强的结构。而后来的许多面向对象语言如Java,C#等都采用了基于堆的对象机制。Object Pascal呢?毫无疑问它的对象也是基于堆的,当我们看到对象...

2007-08-28 13:13:00

阅读数:2994

评论数:5

访问祖先类的虚方法

访问祖先类的虚方法问题提出       在子类覆盖的虚方法中,可以用inherited调用父类的实现,但有时候我们并不需要父类的实现,而是想跃过父类直接调用祖先类的方法。举个例子,假设有三个类,实现如下:type  TClassA = class    procedure Proc; virtua...

2007-08-23 10:17:00

阅读数:2456

评论数:1

汇编与高级语言

汇编与高级语言1.      汇编基础知识1.1.      寄存器 寄存器 用途 ...

2007-07-13 17:06:00

阅读数:3590

评论数:8

Delphi接口的底层实现

Delphi接口的底层实现引言       接口是面向对象程序语言中一个很重要的元素,它被描述为一组服务的集合,对于客户端来说,我们关心的只是提供的服务,而不必关心服务是如何实现的;对于服务端的类来说,如果它想实现某种服务,实现与该服务相关的接口即可,它也不必与使用服务的客户端进行过多的交互。这种...

2007-03-04 16:25:00

阅读数:6788

评论数:5

从普通函数到对象方法 ------Windows窗口过程的面向对象封装

从普通函数到对象方法------Windows窗口过程的面向对象封装 开始,由VirtualAlloc想起      我在查看VirtualAlloc这个API的时候,思绪竟然跳到另一个地方去了。那是以前阅读VCL源码时遗留下来的问题,Classes单元的MakeObjectInstance函数调...

2006-12-20 22:12:00

阅读数:7180

评论数:25

改变Edit的光标

    看着Edit的光标,是不是觉得了无生趣,想不想换个形状来玩玩,其实很简单,且听我道来。    Edit是Windows的标准控件,它是一个系统范围窗口类,所以任何应用程序都能创建它。其实Edit本质上也是一个窗口,MS实现了它却不开放源代码,只暴露出一些接口给我们操作。Edit的光标(Ca...

2006-07-01 16:46:00

阅读数:3714

评论数:2

SourceTo 1.1出来了!!!好用的源代码转换工具,完全开放源代码!!!

自上次发布SourceTo1.0以来,已经时融半年,这半年实在没有时间,但这段时间终于狠下心将其升级到1.1版本。1.1版本较之1.0有许多改进和扩展:1、解决了字符串转义符的问题,至此词法高亮文件总算完整了。2、原来目标文件可以转换成HTML,现在也可以转换成RTF了,这真是一个激动人心的增强,...

2006-06-24 09:07:00

阅读数:2937

评论数:6

Delphi事件的广播2

上篇文章写了将事件分离成类的方法来实现事件的广播,这次将参考观察者模式来实现事件的广播。模式中主要有这两个角色:发布者:发布者保存着一张观察者的列表,以便在必要的时候调用观察者的方法。观察者:观察者是现实某些特定接口的类,对于发布者来说,它只关注这些接口,并不关注观察者具体是什么类。为了让发布者更...

2006-05-13 14:44:00

阅读数:2848

评论数:10

Delphi事件的广播

    明天就是五一节了,辛苦了好几个月,借此机会应该尽情放松一番。可是想到Blog好久没有写文章,似乎缺些什么似的。这几个月来在项目中又增长了许多经验,学到许多实际应用的知识。不如把一些比较有用的记录下来,供朋友们参考可好。我想到Delphi的事件,那可真是个方便的东西,初学者在窗体上拉几个控件...

2006-05-07 13:37:00

阅读数:4349

评论数:7

线程杂谈3

(************************************************(* Subject:   线程杂谈3(* Author: linzhenqun(风)(* Time:      2006-3-25(* Blog:      http://blog.csdn.net...

2006-03-30 00:15:00

阅读数:2735

评论数:4

线程杂谈2

作者:linzhenqun(风)时间:2006-2-6Blog: http://blog.csdn.net/linzhengqun------------------------------------------------------------------------------------...

2006-02-06 23:31:00

阅读数:3427

评论数:3

SourceTo 1.0发布

近几篇技术文章所贴的代码都有词法高亮的效果。这是用了我近期写的一个源代码转HTML的工具:SourceTo。它可以生成各种语言的词法高亮文件,然后根据该词法文件将源代码转成HTML文件。现在将它发布出来,给大家使用。 下面是几种语言源代码的高亮效果:1 Delphitype  TForm1 = c...

2006-01-22 22:51:00

阅读数:2959

评论数:23

线程杂谈

前言由于项目的关系,所以和线程的接触颇多,常常遇到问题,常常看TThread的代码,又常常想一些办法来解决遇到的问题,所以就有了这篇文章。 正文我们常有工作线程和主线程之分,工作线程负责作一些后台操作,比如接收邮件;主线程负责界面上的一些显示。工作线程的好处在某些时候是不言而喻的,你的主界面可以响...

2006-01-07 02:11:00

阅读数:4491

评论数:12

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