- 博客(32)
- 资源 (3)
- 收藏
- 关注
原创 项目经验,简单设计,简单架构
作为一个程序员从大学到现在,毕业2年多了,一直都是程序员,年头不多,但是接触到的技术和项目确是越来越多,有幸目前负责几个项目 对于写软件,有了很多自己的想法和经验,希望跟大家分享一下。 以前的我也是个微软fans,也是个java fans,更是设计模式的fans,什么SOA,什么cpp template真的是玩了个遍。是个彻头彻尾的新技术迷,最开始我作为一个下面的开发
2009-09-05 23:25:00
706
翻译 敏捷开发最佳实践:Model Storming
英文原文:http://www.agilemodeling.com/essays/modelStorming.htm Model Storming是一种实时的建模方式: 你找到了一个需要解决的问题,你马上抓起一小撮团队里可以帮助你的同事,这个小组一起研讨解决这个问题,接下来每个人像刚才一样继续工作。这对于敏捷项目来说是很普遍的事情。使用极限编程的人称这个为站立的设计会议(stand
2007-11-16 10:58:00
1258
原创 MFC 超级链接的控件类
超级链接控件使用步骤:1.在对话框中扔一个Static Text,改一下ID号2.右键选此控件,添加成员函数3.把成员函数的类名(CStatic)改为HyperLink。4.把这个控件的notify属性改为true5.接口介绍 SetLabel 设置显示的文字 SetLink 设置连接到的地址或者文件还有相应的Get方法这些属性可以运行时设定。 #pragma once// Hype
2007-10-13 17:36:00
2030
原创 解读boost库中的unspecified_bool_type
刚接触boost库不久,看到unspecified_bool_type的定义脑袋十分之晕~摘出其中的实现(scoped_ptr.hpp) typedef T * this_type::*unspecified_bool_type; operator unspecified_bool_type() const // never throws ...{ re
2007-10-08 17:03:00
2494
3
原创 C++ template Day Day Up 第6天 class template
类模板 类模板最常见的应用就是容器,比如我们常用的std::vector。假设下面的代码实现一个Stacktemplatetypename T>class Stack...{..}; Usage: Stack上面的代码很容易理解,这个是类模板最基础的用法,在任何C++的书籍当中都可以学习到,让我们加快脚步。Specializations of Class T
2007-10-08 11:01:00
769
原创 C++ template Day Day Up 第五天 partially specialize a function
在C++中类可以partially specialize,但是函数不行。template T* Create(const U& arg){ return new T(arg);}下面这样partially specialize一个模版函数是不可以的。template Widget* Create(const U& arg){ return new Widget(ar
2007-09-28 09:30:00
901
原创 C++ template Day Day Up 第四天 Boost::checked_delete
//DeleteObject.h class Item;class DeleteObject...{public: DeleteObject(void);public: ~DeleteObject(void); void DeleteItem(Item* p);};//DeleteObject.cpp #include "StdAfx.h"#inc
2007-09-27 11:58:00
1355
原创 C++ template Day Day Up 第三天 模板函数的重载
从C++ templates粘一段例子下来:// maximum of two int values inline int const& max (int const& a, int const& b) { return a} // maximum of two values of any type template inline T const&
2007-09-26 08:41:00
689
原创 C++ template Day Day Up 第二天 模板参数推论(deduction)
Today’s subject is Compile Argument Deduction. 我们平时用template的时候往往需要指定template argument type,实际上很多种情况可以不指定具体的类型,而依赖于编译器的deduction(个人推荐把这个单词翻译成推论,能表达出实际的行为,侯捷翻译这个单词为演绎,可能台湾这么说,总觉得怪怪的)。先举一个小例子(refe
2007-09-24 08:41:00
954
1
原创 C++ template Day Day Up 第一天 模板编译模式
痴迷于OO设计,在C++的应用中运用模式或者设计的时候却总是畏首畏脚的,怕没有回收内存,怕产生临时变量,怀念java和C#带给我们的方便,C++真的不行么?Linus那臭小子真的言中了?我不信,他的言论只是利用他的技术权威在进行的商业行为。那么C++程序到底应该怎么设计和编码才是优雅的、方便的呢? 无意间看了 Modern C++ design, 才明白原来template + OO 才是真正
2007-09-22 17:31:00
1126
1
原创 VS2005中去掉字符串操作函数的警告信息
在使用vs2005中用strcpy这类函数就会显示警告信息warning C4996: strcpy was declared deprecated1> c:/program files/microsoft visual studio 8/vc/include/string.h(73) : see declaration of strcpy Message: Thi
2007-09-18 15:02:00
1145
1
原创 实现QQ的抓图功能
最近没写什么,稍稍有点忙,再加上研读modern C++ design太考验脑细胞了,所以赶紧随便研究个什么来继续充实我这个blog…… 进入正题,如何实现像QQ或者红蜻蜓或者lava-lava那样的抓图功能呢?根据下面的分析已经实现了这个程序,可是不知道怎么跟大家共享,如果有兴趣留下Email,我给你把源程序发过去,收到后请来确认一下,谢谢。整个项目的开发环境是VS2005
2007-09-14 09:52:00
2766
13
原创 快速实现托盘功能--VC
托盘在任务栏的右下角,下图就是一个托盘(抓那个图标就是之后的文章要介绍的抓图程序,不要BS我的审美),英文名字很酷--Tray这是个看起来很诱人的功能。我们只需要了解:一个结构NOTIFYICONDATA一个API Shell_NotifyIcon就可以实现它,知道这个API后你就可以去msdn查查怎么用,当然如果你很懒得话就用我将要列出来的这个类吧,很容易使用。
2007-09-13 09:22:00
1784
原创 8皇后C#语言非地归实现(带界面)
这个是那时候想的算法,用C#写的程序,共享一下:)运行效果抓图 不知道为什么上传文件不好使,那只有粘上来代码了,建立一个WinForm工程把下面代码粘进去。可以找一个自己喜欢的图片作为棋子与exe放在一起,重名为棋子.bmp using System;using System.Drawing;using System.Collections;using System.Com
2007-08-07 16:58:00
960
原创 深入浅出C++虚函数表
如要转载请注明作者和本url为什么要了解虚函数表了解虚函数表对理解C++实现多态的机制会有更深的了解,对对象的内存布局会有更好的认识。 验证虚函数表的存在(C++中的struct和class实际上是一样的)C++中当一个类中存在virtual函数(虚函数)或者它的父类中存在虚函数,那么编译器就会为这个类生成虚函数表(virtual table),下面我用代码来验证这个事情。
2007-08-06 13:58:00
15786
4
原创 CruiseControl.Net持续集成实战指南(包含如何配置c++项目)——第三篇 C++项目的配置
首先说这篇主要参考了http://build.sharpdevelop.net/ccnet/doc/CCNET/Using%20CruiseControl.NET%20with%20CppUnit.htmlC++项目单元测试采用CPPUnit,CPPUnit的使用这里不详细讲了,有很多很不错的资料了。在cppunit中设置输出xml文件名为Result.xml
2007-07-27 09:22:00
3357
原创 CruiseControl.Net持续集成实战指南(包含如何配置c++项目)——第二篇 配置CCNet
转本文请带url上一篇介绍完咱们的实战环境,下面主要介绍如何配置CCNet好让整个持续集成框架转起来。 这个配置文件是偶读了半天CCNet文档弄出来的,其实介绍CCNet如何配置的中文文章也不少,我阅读的时候感觉不太明白其中的每种路径干什么用的,所以我就着重讲一讲这些。 配置清单如下:cruisecontrol> This is your CruiseControl.N
2007-07-26 10:56:00
4552
原创 CruiseControl.Net持续集成实战指南(包含如何配置c++项目)——第一篇 实战环境介绍
我需要搭建一个C++项目的持续集成的环境 (windows的程序),所以这几天学习了一下CruiseControl.Net (以下简称CCNet),把整个过程跟大家分享一下。如果你没有用过CCNet,跟着我实战一把,相信会领你入门的。本文准备分三篇:一、工具和环境的简要介绍二、CCNet的配置(.Net项目)三、CCNet中C++项目的配置废话不多说了,实战开始!工具准
2007-07-25 11:38:00
3270
原创 获取连接字符串很方便的一种方法
新建一个txt然后把其后缀改成udl然后双击运行,按照界面配置好后点确定然后用笔记本打开这个文件,就能看到连接字符串了
2007-07-25 10:22:00
706
原创 这两天看C#的语法助记
搞一搞C#,发现有些语法比较怪,要是不怎么用会忘得,留个纪念here。东西大多来自Csharp 高级编程,当然这只是一小部分类和struct区别对我来说最大的区别是实例化的方式,类肯定是在heap上的,都用new.而struct可就猛了,可以是stack也可以是heap(说实话本来挺好个东西用起来反倒比较恶心,struct规则太搞,在加上.net中装箱拆箱这个东东的存在,害得我兴趣
2007-07-25 10:19:00
619
原创 vs2003下编译cppunit examples
弄个cppunit,没想到在2003下竟然编译不过去,经过努力寻找,终于发现了solution,比较简单在Project->properity->Build Events->Post-Build Event 下的Command Line添加上"$(TargetPath)"注意!双两边的引号也需要!然后build一下就搞定了。在vs03,05或者Unix环境下的解决方案是不一样的
2007-07-25 09:44:00
726
转载 IBatisNet 执行存储过程 获取存储过程参数
下面文章来自 http://www.cnblogs.com/maplye/archive/2006/03/25/358598.html粘贴过来紧供个人学习之用,如果想引用一下文章请于原作者联系。映射xml文件书写如下xml version="1.0" encoding="utf-8" ?>sqlMap namespace="Member" xmlns:xsi="http://www.w
2007-05-09 14:16:00
1270
原创 VC中实现XP风格超简单方法
这个方法来源于msdn,还有网上的一些资料创建一个文件,名字是你的程序名.exe.manifest把它放在你项目目录下,把下面的name改成你的exe文件名,然后description里面随便写写 version="1.0.0.0" processorArchitecture="X86" name="**.exe" type="win32"/>hello k
2007-03-30 16:16:00
592
1
原创 dynamic_cast小经验
今天正好用到了dynamic_cast这个东西,分享一下小经验dynamic_cast是RTTI的一部分,所以要想用这个东西一定要先设定编译器的选项,在vc里面在C++那个选项卡里面有一个language,下面有一个runtime type id.. 打开就噢了,不然编译时是没有问题的,运行就会报错。这样一种情况class A...{};class B:public A...{};
2007-03-29 08:22:00
701
原创 大战嵌入式linux第一天
很累很累,不过收获还是不少,已经拨开一些对嵌入式系统的神秘感!总结一下今天的行动我的开发板是华恒的S3C2410-study,我比较喜欢追逐潮流,安装了fedora6,虽然推荐安装RH9(也因为我的硬盘是SATA口的),结果按照说明文档操作的时候遇到了一些麻烦。按照说明步骤nfs服务很容易就启动了,没有遇到什么困难,偶就不说了。架设tftp的时候让我忙了一下午,说说经过,希望碰到类似小
2007-01-07 21:37:00
830
1
原创 终于安装上了fedora6
满紧张的怕把硬盘内容弄没了,最后还是开始安装了,遇到了我遇到的一些问题分享一下。我是从网上下载的iso,然后刻录到光盘,放进光驱,重新启动,结果顺利进入windows……郁闷了好一阵,想了想重新把第一张盘刻了一下,然后放进去,成功进入linux安装界面。直接按回车,然后选文字,之后就到了硬盘分区的那一步了,我选择自定义那个,结果出现一个错误提示,大概说没有可以识别的储存设备,上网一阵搜
2006-12-31 18:40:00
1497
原创 embedded开发板已经到手了!
恩!盼望已久的linux开发板终于到手了,很不错, 没想到能这么快到。华恒的办事效率还是不错地!arm: s3c2410 开发板型号:HHS3C2410-StudyR1可惜啊!还得准备考英语,抵制住心底的诱惑,对于一个一点不了解硬件的我还有很多东西去学!Challenge!以后要把学习embedded linux的感想和学习精华发到这里记录下来
2006-12-12 17:45:00
581
原创 开始linux之旅~Vi的使用总结(命令举例)
Vi == Visual interface3种运行模式:编辑模式、插入模式、命令模式刚进入程序的时候是编辑模式编辑模式-〉插入模式 插入命令i,附加命令a等插入模式-〉编辑模式 Esc编辑模式->命令模式 按:命令模式->编辑模式 执行完命令(Enter之后)-------------------进入插入模式的命令---------------i 从光标所在位置前开始插入文本I
2006-11-12 09:30:00
1093
原创 开始linux之旅~
忽然间我对blog又有了兴趣,大概是因为对自己有了一些新的想法和目标吧!大学真的学到了好多,人总在不断反思中进步。这是我的技术博客,只有技术相关:)大四了,从一个只会doc/windows和干游戏的小毛孩子到一个什么技术都敢试试的傻小子,想一想自己真的接触了好多东西,想统计一下猛然间也想不起来,呵呵。有时候也在提醒自己千万不要变成那种什么都懂一点然后觉得自己很牛B的样子。无聊至极。大学间统计了一下
2006-11-11 18:13:00
666
原创 j2me学习笔记1
Command使用在form子类中用 addCommand(new Command("Exit", Command.EXIT, 2)); addCommand(new Command("Listen",Command.OK,1)); addCommand(new Command("stop",Command.STOP,1));添加command,第三个参数为优先级,影
2006-03-16 16:17:00
683
原创 来吧,英语、asp.net、j2me、C#、设计模式
不行不行,最近乱乱的。最近有点乱;乱七八糟的学习,得总结总结阿,不然什么也学不到哦。英语:每天必须坚持背,不然感觉就没了,至少20~30个单词。asp.net:按着老师的课间学习,每周1章,坚持学习,每周二下午来搞定。hohoj2me:同上,每周3一下午来学习。C# & 设计模式:其他时间搞定,每周学习一个模式,每周学习一章c#高级编程
2006-03-16 14:21:00
715
原创 在软件学院这3年~
从小玩电脑到现在,哈哈,头一次这么落伍,这是第一次写博客。 就写写一个普通大学里软件学院的一个不成气候的学生的故事好了。 大一,高数上下60分,离散数学没及格…… 玩得是空前的high,还好c语言没有拉下,不管怎么说因为这科没拉下对这个专业还是很有信心的。谭浩强的c语言前4章当时是不知所云,我记得我是当时先看中间再回头看才明白一些。现在回头想想大一真是太腐败了。 真正学会编程是离散数学
2006-02-11 01:50:00
615
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人