自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (6)
  • 收藏
  • 关注

原创 《你的灯亮着吗?》笔记

人们如何思考?人们在遇到棘手的难题时会怎么思考并处理?对于某一个特定的问题,人们会用什么样的角度去思考? 一位少年去拜访智者。他问:我如何才能快乐地解决我所遇到的问题呢?智者告诉他四句话:把自己当成别人;把别人当成自己;把别人当成别人;把自己当成自己。智者的话道出了看待事物的最重要的立场问题。 1)动手去解决问题之前,好好想想问题的来源;2)如何站在各个角度来看待面临的问题,以

2011-06-06 17:39:00 1362

原创 软件架构师应该知道的97件事 笔记(六)

Item 81 ~ Item 97

2011-05-25 00:16:00 1142

原创 软件架构师应该知道的97件事 笔记(五)

Item 63 ~ Item 80

2011-05-24 23:23:00 1310 1

原创 软件架构师应该知道的97件事 笔记(四)

Item46 ~ Item62

2011-05-22 22:18:00 1065

原创 软件架构师应该知道的97件事 笔记(三)

Item 31 ~ Item 45

2011-05-19 23:03:00 1002

原创 软件架构师应该知道的97件事 笔记(二)

Item16 ~ Item30

2011-04-20 01:34:00 1000

原创 软件架构师应该知道的97件事 笔记(一)

Item1 - Item15

2011-04-08 01:27:00 1250

原创 linux杂项

linux下面开发相关的杂项记录

2010-12-20 00:10:00 1152

原创 glib命令行解析库简单使用

使用GOptionContext及GOptionEntry等进行参数解析的简单用法

2010-12-15 01:39:00 9059 2

原创 Windows下的Gtk+开发环境配置(vc)

在Windows下面用vc开发一个Gtk+的HelloWorld窗口

2010-11-06 20:01:00 2846 3

原创 如何在linux下面开始阅读开源程序(eclipse)

今天终于找到点方法,记下来拿到一个开源的工程之后,如何下手,如何才能快速的调试跟踪的方法来阅读程序,今天终于找到点技巧,记下来阅读调试环境是在Eclipse1. 将开源工程安装,安装的时候,要注意安装为debug的,这个目录一般安装到自己的学习目录即可吧如: ./configure --prefix=/home/godpig/study/opensrc --enable-debug然后再 make以及make install这个时候,在/home/godpig/study/opensrc目录下面,已经有安装

2010-09-28 02:31:00 2122 1

原创 《PHP和MySQL Web开发》笔记之使用PHP(二)

第五章 代码重用与函数编写require()或include()可以将一个文件载入到php脚本中。这两个函数几乎等价,唯一的区别是调用失败后require()给出一个致命错误,而include()只给出一个警告。 如果Web页面具有一致的外观,可以将相同的部分分离到单独的页面中,然后可以在php中使用require()语句将模板元素加入到页面中。如果希望保证一个文件将被

2010-01-01 10:56:00 963

原创 《PHP和MySQL Web开发》笔记之使用PHP(一)

 第一章 PHP快速入门php的变量有三种风格短风格:php变量与html表单中的表单域名相同。$tireqty中等风格:$_POST["tireqty"] $_GET $_REQUEST长风格:$HTTP_POST_VARS[tireqty] $HTTP_GET_VARS (可能会消失) 点号(.)是字符串连接符 echo $tireqty.tires;如

2009-12-12 14:17:00 1459

原创 <Oracle database 10gSQL>开发指南笔记

1. Oracle中的函数函数可以进行组合,如:select name UPPER(SUBSTR(name, 2, 8)) ... 1) 单行函数  字符函数、数字函数、转换函数、日期函数、正则表达式函数(10g)  转换函数就是从一种类型转换为另一种数据类型的函数。2) 聚合函数聚合函数同时对一组行进行操作,对每组行返回一行输出结果。AVG/COUNT/MAX/M

2009-09-12 11:05:00 1462

原创 《精通正则表达式》笔记

 1. 多选结构(mm|gg) 表示匹配 "mm"或"gg" 2. 忽略大小写s/source/dest/i搜索source,将其替换为dest,此处的i只对source起作用,而不会作用于dest。 3. 单词分界符//> 用来匹配单词的结束比如: /cat/>匹配以"cat"结尾的单词,如scat则:/ 必须精确匹配 "cat" 4.

2009-08-22 01:15:00 1785 4

原创 effecctive STL(二)

条款26:尽量用iterator代替const_iterator,reverse_iterator和const_reverse_iterator有些函数只接受iterator类型的参数。const_iterator不能隐式转换成iterator,即使用变通的办法,也不通用,且不能保证高效。从reverse_iterator转换而来的iterator在转换之后可能需要相应的调整。

2009-08-09 23:34:00 1582

原创 Effective STL (一)

条款1:仔细选择你的容器deque是唯一一个“在迭代器失效时不会使它的指针和引用失效”的标准STL容器。 条款2:小心对“容器无关代码”的幻想既要和序列容器又要和关联容器一起工作的代码并没有什么意义。很多成员函数只存在于其中一类容器中,比如,只有序列容器支持push_front或push_back,只有关联容器支持count和lower_bound。 在不同的类中,相同的操作名

2009-07-19 22:21:00 1489

原创 More effective c++ (二)

Item M17:考虑使用lazy evaluation(懒惰计算法)如:String s1 = "Hello";String s2 = s1;或许s2在程序中根本不会用到,所以在开始的时候不要调用s2的赋值构造函数来初始化,到后面要用,或者要改写s2的值的时候再调用,再进行赋值。 Item M18:分期摊还期望的计算比如要计算某组数据的平均值。 我们可以在每一个新数值

2009-07-05 11:21:00 1252

原创 More effective c++ (一)

Item M1:指针与引用的区别引用必须被初始化,且不能改变它本身使其成为另一个变量的别名。Item M2:尽量使用C++风格的类型转换这样的类型转换不论是对人工还是对程序都很容易识别。它们允许编译器检测出原来不能发现的错误。你能用dynamic_cast把指向基类的指针或引用转换成指向其派生类或其兄弟类的指针或引用,而且你能知道转换是否成功。失败的转换将返回空指针(当

2009-06-30 16:52:00 918

原创 Effective C++ (二)

 条款29: 避免返回内部数据的句柄尽量不要返回类成员变量的地址或引用等句柄,以防止被外部轻易的改变。而且很容易出问题。如返回了一个类内部成员变量指针指向某个缓冲区,在外部调用delete等操作这个缓冲区,势必造成类内部成员变量不能再有效的使用了。也不要返回了一个局部对象,局部对象出了作用域之后就被销毁。 条款30: 避免这样的成员函数:其返回值是指向成员的非const指针

2009-06-22 23:09:00 1338

原创 Effective C++ (一)

 条款1:尽量用const和inline而不用#define尽量用编译器而不用预处理常量的代码在编译时报错,就会很令人费解。因为报错的是常量。代替函数调用的宏会有很多问题。如:#define max(a,b) ((a) > (b) ? (a) : (b)) 比如里面带有++之类的操作 定义某个类(class)的常量一般也很方便,只有一点点不同。要把常量限制在类中,首先要

2009-06-16 22:49:00 1715

翻译 GLib(二)

 1.4 Basic Utilities (基本函数,这个Utilities不知道如何译,就写成函数吧,因为后面确实在讲函数,嘿嘿……)为了简化你的程序与C语言以及系统的交互,GLib提供了大量的函数。 要了解GLib的函数处理数据结构部分,请看1.5节。1.4.1 内存管理如果你使用GLib提供的内存管理例程,它可以避免你处理很多让你头痛的事。 GLib提供了的附加的错误

2009-04-19 16:46:00 22896 1

翻译 第一章 GLib (一)

 GLib1.1 Introduction在开源世界中,G中很常见的。 它代表了GNU ("GNUs Not Unix")。 像GTK+,GLib,GObject,以及GNOME,还有一些其它的软件包,如Ghostscript和gcc中都充满了G。为了理解后面的章节,你必须学习一些GLib的基础知识(libglib-2.0)。它为GTK+和GNOME程序提供了基础的数据结构和实用

2009-04-16 00:24:00 6000 1

原创 最近使用j2me所遇到的问题~

1. 好多程序在Sun的模拟器上测试非常好,但是拿到Windows Mobile上面之后,问题就出现了N多,其中好多问题可能都是因为程序运行时占用了太多的空间。 a). 在Sun模拟器上运行正常,在Mobile上装好之后,无法运行,提示OutofMemory之类的信息,这可能就是因为你的程序运行时申请内存申请不到了,你可以检查一下你的程序里面是不是使用了太多的图片资源,是不是有很多全局变量

2009-03-17 20:18:00 1122

原创 在j2me中,使用mmapi来播放gif动画

j2me画图的话,好像只保证使用png,其它的格式都不能保证。所以要使用gif的话,可以自己解码,但是这样比较麻烦,但网上有一些网友写的解码代码如果使用mmapi的话,实现起来就比较简单了它的代码根播放视频的代码很类似,下面贴上简单的代码示例 try { InputStream ins = getClass().getResourceAsStream("/animatio

2009-03-11 19:15:00 827 1

原创 j2me中,将屏幕上某一区域的颜色进行反转

如果自己使用低级UI的时候,比如说在Canvas上使用Button,则在Ok键按下之后,就要自己来处理颜色的改变,比如说将颜色反转。Graphics类中有drawRGB方法,用该方法可以将指定的区域设为特定的颜色数据。这个方法的声明如下:void drawRGB(int[] rgbData, int offset, int scanlength,

2009-03-10 19:39:00 1188

原创 lwuit使用资源时应注意的问题

 在使用资源的时候,如果添加了主题,主题里面的Font要正确的选择,否则会引起莫名其妙的错误 我在程序中就使用了lwuit自带的javaTheme.res来进行测试我的程序,发现进行页面切换的时候总是出现异常,而且文字都没了~~~ 后来一点一点的改代码测试才发现,原来是它的文字设成了Serif,它好像根本不支持中文,如果把Font的风格样式删除之后,彩默认的字体,然后再使用该主题,

2009-02-23 15:27:00 761

原创 ACE中的主动对象模式(Active Object Pattern)

被动对象就是一般情况下在那儿放着不会动,等待着别的执行线程调用,然后才会执行。主动对象一般自己包含执行线程,可以主动的执行代码。 1.主动对象是基于ACE_Task类的,它提供执行线程的。 2.当某些要执行的代码想被执行时,要放入某个队列,然后执行线程发现队列不空时就从这个队列里面取出这个队列中的对象,然后执行。这个队列就是ACE_Activation_Queue。 3.放

2009-01-19 19:33:00 3228

原创 在linux下,用find查找以abc开头,但不包含“.”的文件的方法

 如下三种方法都可以:1. find . -name "abc*" ! -name "*.*" -print2.find . -regex .*/abc[^.]*3.find . -name "*.*" -o -name "abc*" -print第一种方法是最容易理解的了,第二个 -name前的 ! 号表示 -not, 与-not的意义

2009-01-04 21:56:00 31079 2

原创 在Linux上使用ACE

ACE自适配通信环境(ADAPTIVE Communication Environment)是可自由使用、开放源码的面向对象(OO)框架(framework),它实现了许多用于并发通信软件的核心模式。ACE提供了一组丰富的可重用C++包装外观(wrapper facade)和框架组件,可跨多种平台,如Windows、Linux、WinCE、VxWorks等系统。它不仅实现了网络通信,还有线程、进程

2008-12-26 19:26:00 7482 2

原创 Pro*C简单示例代码

下面的代码就是实现了连接数据库,然后做一些操作我的数据库表名为ym_test,仅有两个字段,int型的I,还有char *型的dbop.pc文件#include  #include  #include  #include "dbop.h" EXEC SQL BEGIN DECLARE SECTION;        sql_context     ctx

2008-12-22 21:44:00 1205

原创 Pro*C编程初步 + 栽在了一个非常简单的问题上

搞了好长时间,总算编译过去了…… Pro*C程序好像就是用C语言来操作ORACLE数据库的程序(有待考证;-) )Pro*C程序一般是以pc为后缀的,ORACLE也提供了预编译程序,可以将这些SQL语句之类的都预编译成C或C++程序,然后再编译相应的C/C++程序,生成可执行文件 要将pc编译成cpp文件,要使用proc程序:它的命令用法如下:proc iname=fi

2008-12-19 20:57:00 2340

原创 最近一段时间遇到的问题

1. delete的时候出错用new申请的空间,然后在程序的某个时候delete,但一运行到delete处就会崩溃,开始就坐那儿查找问题,找了半天也没找到,但好像又没有什么问题,但不可能无缘无故就会出错吧,于是静下心来随意的浏览程序代码,突然发现,这块内存是共享内存,此时还Map着呢,晕了…… 2. HBITMAP只能被选入一个DC中往DC上画图片的时候一直出问题,有时候就是全黑的

2008-12-14 21:42:00 804 1

原创 通过读数据库来获取手机联系人

要获取手机中的联系人,微软提供了Icontact接口,可以实现,获取Sim卡联系人,可以通过SimReadPhonebookEntry函数来实现,在SDk中均提供了例子。不过还可以通过读数据库的方法来读取联系人记得以前在网上看到过有人测试过用Icontact接口来读联系人和用读数据库的方法来获取联系人的效率,好像读数据库可以快很多。手机联系人存储在pim.vol卷上,数据库名为:Conta

2008-12-05 19:49:00 1536 2

原创 建立gprs连接

在Mobile中建立简单的连接的话,也只需要几个函数,首先是检测当前的Connection Manager函数是否准备好了,用ConnMgrApiReadyEvent就可以了。然后就可以枚举当前的可用网络,使用ConnMgrEnumDestinations然后选择某个网络建立连接,使用ConnMgrEstablishConnectionSync或ConnMgrEstablishConnec

2008-11-28 22:44:00 1497

原创 EDB中取得数据库的记录条数

要获取某个数据库中的所有记录数,没有必要一条一条的往外读,然后判断读成功了多少条 edb中提供CeGetDBInformationByHandle这个函数,它可以取得数据库中的许多相应信息这个函数需要两个参数,第一个是数据库的句柄,就是通过CeOpenDatabaseInSession打开数据库时所返回的句柄,第二个参数是BY_HANDLE_DB_INFORMATION类型的结构,

2008-11-23 22:31:00 2010 4

原创 今日插件的简单使用

今日插件的核心就是一个DLL,系统会到HKLM/Software/MicroSoft/Items下面去枚举,把应该显示的都显示出来。Items下面有好多项,每一个项代码一个插件,如果它的Enable的值为1,则表示要显示该插件。 只要让他导出一个函数就可以了,即InitializeCustomItem一般在def文件里加入这行代码就行了:EXPORTSInitializeCus

2008-11-16 21:35:00 1505

原创 获取SIM卡号(IMSI)

又到一周周未时,该写博客了,但想了一下,突然发现这周什么也没干,也不知道写什么,最后突然在桌面上发现了这段代码,获取IMSI用的,也就拿这东东来写写吧,赶快写完得玩会游戏,游戏时间又到了,Dota…… IMSI也就是SIM卡号,是用户的唯一标识,IMSI号码结构为:     MCC------------- MNC------------------ MSIN  MCC=移动国家号

2008-11-07 20:42:00 20491 1

原创 在Mobile上使用Direct3D

好久以前写的,想做个比较漂亮的主界面,但后来因为用D3D太卡,所以只学了一点,后来就没再学就是显示一个立方体,按方向键可以旋转main.bmp就是那个唯一的资源(拿SDK里面的D3D的例子改的) 直接贴代码了:#pragma comment(linker, "/nodefaultlib:oldnames.lib") #include  #include 

2008-10-29 21:36:00 2938 1

原创 EDB的简单使用

EDB是从Windows Mobile 5.0后出现的,提供了比CEDB更好的性能。要使用EDB,首先就是mountBOOL CeMountDBVol(   PCEGUID pceguid,   LPWSTR lpszDBVol,  DWORD dwFlags);它的第一个参数是一个CEGUID类型的指针,也是一种唯一标识符,一般在开始使用前先用CREATE_SYSTE

2008-10-29 21:12:00 8794 6

软件架构师应该知道的97件事笔记

将《软件架构师应该知道的97件事》中每个条目逐条记的笔记……

2011-05-25

线性散列表(linear hash)

英文的讲线性hash的 ............ ............

2010-10-31

symbian C++入门教程

网友写的入门教程,一共30余页,都是基础知识…… 从开发环境,到安装包……

2009-05-12

VC 瞬间关机(使用RtlAdjustPrivilege和ZwShutdownSystem)

#include <windows.h> const unsigned int SE_SHUTDOWN_PRIVILEGE = 0x13; int main() { HMODULE hDll = ::LoadLibrary("ntdll.dll"); typedef int (* type_RtlAdjustPrivilege)(int, bool, bool, int*); typedef int (* type_ZwShutdownSystem)(int); type_RtlAdjustPrivilege RtlAdjustPrivilege = (type_RtlAdjustPrivilege)GetProcAddress(hDll, "RtlAdjustPrivilege"); type_ZwShutdownSystem ZwShutdownSystem = (type_ZwShutdownSystem)GetProcAddress(hDll, "ZwShutdownSystem"); int nEn = 0; int nResult = RtlAdjustPrivilege(SE_SHUTDOWN_PRIVILEGE, true, true, &nEn); if(nResult == 0x0c000007c) { nResult = RtlAdjustPrivilege(SE_SHUTDOWN_PRIVILEGE, true, false, &nEn); } nResult = ZwShutdownSystem(2); FreeLibrary(hDll); return 0; }

2009-04-17

Windows驱动开发入门

包含了几个入门开发的文档 hello world 环境配置 USB Wince

2009-03-05

ril.dll (radio interface layer dll)

windows mobile 中的ril.dll

2008-10-17

空空如也

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

TA关注的人

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