摘要: 工作生活,不免有些牢骚。发牢骚的时间地点场合值得考究。发牢骚的时间不宜在早晨发牢骚,因为早晨发过之后,影响后续一天的工作生活情绪;适合在下班之后,傍晚回家之前发牢骚,一吐为快之后,可以宽心睡觉休息。发牢骚的地点不宜在大街上发牢骚;适合在家里或公共聊天场所发牢骚,当然还与场合有关。发牢骚的场合不宜当着陌生人或不熟悉的同事发牢骚;不宜在办公场所当着上司或下属发牢骚;不宜当着孩子的面发牢骚。适合在公共聊天场所(比如咖啡茶座之类)或无外人打扰的家里,与亲密的亲人或同事朋友举办发牢骚活动。发牢骚无非也是倾诉的一种变体,其实是个非常个人(priviate/personal)的事情,适合与几位挚友或最亲密的 阅读全文
posted @ 2012-08-27 17:17 做一个内心安静的人 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 做一个内心安静的人,不骄不躁,且行且乐 安静 是一种天然的存在,年龄长久的提炼和沉寂,让内心更为充盈,是生命摆脱浮躁而逐渐趋于安静。 安静 是从最深的绝望处寻找到的最美丽的惊喜,这是一种成熟人生的境界,一种充满乐趣的安静,怎么品味都有情趣。 一个人,若想在不同的人生阶段有所得,有所悟,有所成就,绝对 阅读全文
posted @ 2020-01-11 17:03 做一个内心安静的人 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 作为C++的一个开发者,字符串处理一直是C++标准库的弱项。 鄙人不喜欢造轮子, boost::icontains :检测一个字符串是否包含另一个; boost::iequal :检测两个字符串是否相等; boost::istart_with:检测一个字符串是否以另一个字符串为前缀 boost::iend_with :检测一个字符串是否以另一个字符串为后缀 boost::trim_lef... 阅读全文
posted @ 2017-03-09 17:51 做一个内心安静的人 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 我在使用VS2010添加类的时候,会弹出一个错误框,提示 CodeModel操作失败,可以无法访问标记数据库 英文版是 CodeModel operation failed,Possibly cannt access Tag database. 添加类很是麻烦。 后来到网上搜索了下,终于在 一个论坛 阅读全文
posted @ 2016-02-25 20:00 做一个内心安静的人 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 1 kB = 1024 B (kB - kilobajt) 千 1 MB = 1024 kB (MB - megabajt) 兆 1 GB = 1024 MB (GB - gigabajt) 吉 1 TB = 1024 GB (TB - terabajt) 太 1 PB = 1024 TB (PB - petabajt) 拍 1 EB = 1024 PB (EB - e... 阅读全文
posted @ 2013-02-25 09:02 做一个内心安静的人 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 1、无论你现在或将来从事的职业是什么,对职业要负责这一点切切不可忘记。 2、切记和谐融洽的人际关系非常重要。实际证明与同事间人事关系融洽将使工作效率倍增。 3、要优化你的交际技能。优良的交际技能可为你谋职就业提高成功几率。 4、要善于发现变化并适应变化。不管周围环境及你人生某一阶段出现何样的变化,你都应该善于发现其中的各种机遇并驾驭这些机遇。 5、要灵活。未来时代的工作者们可能必须要经常转... 阅读全文
posted @ 2013-02-23 19:12 做一个内心安静的人 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 有十句话一定不要对你的老板说,假若你遇到这种情况,该怎么面对呢?学学下面这些应对方式吧!弱智话一:“有好几家公司都想挖我过去。”你想表达的:我的能力在业内很受认可,公司一定要重用我啊。老板怎么理解:此人还想在公司继续干下去,还没有找到更合适的机会跳槽;此人想用这话刺激我,以争取到更好的待遇;此人已动了跳槽的念头,我要做一些二手准备了。支招:你应该这么做:直接提出你的要求。老板并不傻,他们自己也找过猎头或也曾被挖角过,他们不但了解你的工作表现,甚至比你更深知你的行业价值。所以,老板在猎头找到你之前,就预测到了你的升值空间,当你开口后,他多半会做个顺水人情。弱智话二:“为什么升他(她)不升我?”你 阅读全文
posted @ 2013-02-23 18:12 做一个内心安静的人 阅读(607) 评论(0) 推荐(0) 编辑
摘要: Sub CommentTONextLine() DTE.ActiveDocument.Selection.EndOfLine(True) DTE.ActiveDocument.Selection.Cut() DTE.ActiveDocument.Selection.LineDown() DTE.ActiveDocument.Selection.EndOfLine() DTE.ActiveDocument.Selection.Indent() DTE.ActiveDocument.Selection.Paste() DTE.ActiveDocument.Selection.LineUp() D. 阅读全文
posted @ 2012-10-12 17:33 做一个内心安静的人 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 开发过程中一些经验总结 以下总结主要由李俊峰(lijunfeng 00165774/huawei,)、李伟(liwei 00165242/huawei,)、姜川(j00132245)总结 1.自定义CListCtrl,使用自定义列表头CHeaderCtrl 在自定义CListCtrl的列表头时,需要替换系统自带的CHeaderCtrl,网上代码的处理方式通常是在自定义的MyListCtrl中重写PreSubclassWindow,并在其中调用(其中m_MyHeaderCtrl是自定义的CHeaderCtrl,作为MyListCtrl的成员变量) if(GetHeaderCtrl())... 阅读全文
posted @ 2012-09-25 10:16 做一个内心安静的人 阅读(3105) 评论(0) 推荐(0) 编辑
摘要: ActiveX控件的打包安装 可以把ActiveX控件打成CAB包,在页面中指定该CAB包的位置,如果目标机器访问页面时,没有安装过此控件,则IE会自动下载此CAB包到目标机器,并进行安装 1、确认ActiveX控件依赖于哪些DLL 使用vc的DEPENDS.EXE(Microsoft Visual Studio\Common\Tools目录下)打开ocx/dll文件,即可看到其依赖的dll文件 2、写setup.ini文件 IE就是根据setup.ini文件,来进行控件和相关DLL的下载和安装的。 例如: [version]--版本信息,都是固定的 ; vers... 阅读全文
posted @ 2012-09-25 10:15 做一个内心安静的人 阅读(764) 评论(0) 推荐(0) 编辑
摘要: 创建ActiveX工程: 可以使用VC建立MFC工程或者ATL工程来进行ActiveX控件开发。使用MFC方式建立,系统会自动实现一些ActiveX控件必须的接口,开发人员只需关注业务就可以了;使用ATL方式建立,开发人员需要实现十几个COM接口(ActiveX实际上是COM的一种),需要对COM有一定的了解。但是使用MFC方式,最后发布的安装包要包含引入了的MFC的DLL(视频控件引入了两个,总共3M左右),会导致安装包会比ATL方式大一点。 1、MFC方式 使用MFC方式创建ActiveX工程比较简单,只要选择了MFC ActiveX工程,之后都按系统下一步就可以了。 ... 阅读全文
posted @ 2012-09-25 09:55 做一个内心安静的人 阅读(675) 评论(0) 推荐(0) 编辑
摘要: 名称:IExpreIExpress是微软为压缩CAB文件及制作安装程序所开发的小工具,其实应该算是MAKECAB的一个Shell。虽一直藏身于微软的产品中,却从未对它说明过,但不能否认是一款不错的免费软件。功能专用于制作各种 CAB 压缩与自解压缩包的工具。 只要在“开始 → 运行 ”中输入“iexpress”点“确定”即可。 对于合成文件非常有用。 伪装免杀的木马一般的杀软都不会报毒。使用方法大家知道 CAB 这种压缩格式比 ZIP 的压缩率要高,与 RAR 相当,而且是一种标准的压缩格式,能够被 WINZIP 等众多压缩软件打开,但制作 CAB 自解压文件的工具却不多。其实好的工具就在我们 阅读全文
posted @ 2012-09-25 09:34 做一个内心安静的人 阅读(524) 评论(0) 推荐(0) 编辑
摘要: from tkinter import *class Application(Frame): def say_hi(self): print("hi there, everyone!") def createWidgets(self): self.QUIT = Label(self) self.QUIT["text"] = "请点击按钮记录工时..." self.QUIT["fg"] = "red" self.QUIT["bg"] = "white"# s 阅读全文
posted @ 2012-09-14 17:35 做一个内心安静的人 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 9.8 sched 地址: http://docs.python.org/library/sched.html 可以做计划任务,就是在指定的延时之后执行一段程序。 sched.scheduler(timefunc, delayfunc) 接受两个参数, timefunc 必须在没有参数的情况下也能调用,返回延时数字(单位无所谓)。 delayfunc 接受一个参数,即为 timefunc 的返回值,并按照这个返回值进行延时。每当有一个 event 运行之后 delay 都会被以 0 为参数调用,这就允许在多线程程序中的其它进程有机会运行。 例子: # -*- coding: c... 阅读全文
posted @ 2012-09-14 10:24 做一个内心安静的人 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 一、概述 ACE_Task是ACE中的任务或主动对象“处理结构”的基类。ACE使用此类来实现主动对象模式。所有希望成为“主动对象”的对象都必须由此类派生。同时可将它看作是更高级的、更为面向对象的线程。 ACE_Task处理的是对象,因此更有利于构造OO程序,产生更好的OO软件,而且,它还包括了一种用于 与其他任务通信的易于使用的机制。 ACE_Task可用作: <1>更高级的线程(常称其为任务) <2>主动对象模式中的主动对象 PS.ACE任务: 每个任务都含有一或多个线程,以及一个底层消息队列。各个任务通过消息队列进行通信。至于消息队列实现的内在细节程序员不必关注。发 阅读全文
posted @ 2012-09-13 09:13 做一个内心安静的人 阅读(2257) 评论(0) 推荐(0) 编辑
摘要: 项目最顶层是项目负责人,接下来项目会落实到PM(项目经理PM),项目经理将任务分成若干个子项目,每 个项目由一个PL(项目组长)负责。在每个子项目中,由SE(系统工程师)带领PG(程序员)共同完成。 其中,PM和PL一般为具有资深项目管理经验、长期开发实践和良好交流能力的高级技术人才。SE需要具有 独立的设计和提案能力,具有长期开发实践经验和交流能力。一般又可分为三种类型:第一种,纯技术型 SE,这种人往往会成为技术专家;第二种,技术兼管理型SE,将来有希望成为PL、PM,甚至更高级的职位 。Bridge型SE(BSE),通常是负责与客户的沟通,以及团队内的协调工作。PG(ProGramer. 阅读全文
posted @ 2012-09-10 12:08 做一个内心安静的人 阅读(18326) 评论(0) 推荐(0) 编辑
摘要: /*此文是译者出于自娱翻译的GotW(Guru of the Week)系列文章的一篇,原文的版权是属于Hub Sutter(著名的C++专家,《Exceptional C++》的作者)。此文的翻译没有征得原作者的同意,只供学习讨论。——译者:黄森堂*/ #18 迭代指针. 难度:7/10 任何程序在使用标准库都知道使用公共与非公共iterator容易犯错误,你发现了多少种呢? 问题: 以下程序至少有四处关于iterator的问题,你发现多少呢? int main( int, char*[] ) { vector<Date> e; copy( istream_ite... 阅读全文
posted @ 2012-09-06 15:26 做一个内心安静的人 阅读(262) 评论(0) 推荐(0) 编辑
摘要: /*此文是译者出于自娱翻译的GotW(Guru of the Week)系列文章的一篇,原文的版权是属于Hub Sutter(著名的C++专家,《Exceptional C++》的作者)。此文的翻译没有征得原作者的同意,只供学习讨论。——译者:黄森堂*/ #36 初始化. 难度:3/10 直接初始化与拷贝初始化有什么区别呢?,且在什么时候使用? JG 问题: 1.直接初始化与拷贝初始化有什么区别呢? (提示:查看早期的GotW) Guru 问题 2.以下哪处使用直接初始化且何处使用拷贝初始化? struct T : S { T() : S(1), // 初始化... 阅读全文
posted @ 2012-09-06 15:22 做一个内心安静的人 阅读(270) 评论(0) 推荐(0) 编辑
摘要: #------------------------------------------------ # Enterprise Architect Schema Script # DBMS: MySQL InnoDB # VERSION: From 4. # CREATED: 21/1/2010 #... 阅读全文
posted @ 2012-09-06 07:00 做一个内心安静的人 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提到他做了一个调查,参与者大多数是计算机科学家,他请这些科学家投票选出最重要的算法,以下是这次调查的结果,按照英文名称字母顺序排序。A* 搜索算法——图形搜索算法,从给定起点到给定终点计算出路径。其中使用了一种启发式的估算,为每个节点估算通过该节点的最佳路径,并以之为各个地点排定次序。算法以得到的次序访问这些节点。因此,A*搜索算法是最佳优先搜索的范例。集束搜索(又名定向搜索,Beam Search 阅读全文
posted @ 2012-09-03 17:29 做一个内心安静的人 阅读(233) 评论(0) 推荐(0) 编辑
摘要: GotW #07 Compile-Time Dependencies 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of the Week 条款07:编译期的依赖性 难度:7 .. 阅读全文
posted @ 2012-08-27 17:55 做一个内心安静的人 阅读(289) 评论(0) 推荐(0) 编辑
摘要: GotW #06 Const-Correctness 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of the Week 条款06:正确使用const 难度:6 / 10 ... 阅读全文
posted @ 2012-08-27 17:43 做一个内心安静的人 阅读(201) 评论(0) 推荐(0) 编辑
摘要: GotW #05 Overriding Virtual Functions 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of the Week 条款05:覆写虚拟函数 难度:.. 阅读全文
posted @ 2012-08-27 17:40 做一个内心安静的人 阅读(167) 评论(0) 推荐(0) 编辑
摘要: GotW #04 Class Mechanics 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of the Week 条款04: 类的构造技巧 难度:7.5 / 10 (你在实. 阅读全文
posted @ 2012-08-27 17:39 做一个内心安静的人 阅读(215) 评论(0) 推荐(0) 编辑
摘要: GotW #03 Using the Standard Library (or, Temporaries Revisited) 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of. 阅读全文
posted @ 2012-08-27 17:38 做一个内心安静的人 阅读(129) 评论(0) 推荐(0) 编辑
摘要: GotW #02 Temporary Objects 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of the Week 条款02: 临时对象 难度:5 / 10 (把你的心.. 阅读全文
posted @ 2012-08-27 17:35 做一个内心安静的人 阅读(173) 评论(0) 推荐(0) 编辑
摘要: GotW #01 Variable Initialization 著者:Herb Sutter 翻译:kingofark [声明]:本文内容取自www.gotw.ca网站上的Guru of the Week栏目,其著作权归原著者本人所有。译者kingofark在未经原著者本人同意的情况下翻译本文。本翻译内容仅供自学和参考用,请所有阅读过本文的人不要擅自转载、传播本翻译内容;下载本翻译内容的人请在阅读浏览后,立即删除其备份。译者kingofark对违反上述两条原则的人不负任何责任。特此声明。 Revision 1.0 Guru of the Week 条款01: 变量的初始化 难度:4 / .. 阅读全文
posted @ 2012-08-27 17:33 做一个内心安静的人 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 1.编写小程序,请画程序流程框图;编写大程序,请画分段程序流程框图; 2.源代码看不太懂时,试着画出程序的流程图或分段流程图,并结合源代码搞清楚流程图中各个变量的作用和含义; 3.阅读源代码之前,请先把程序编译运行,看一看程序运行的样子,得到一个感性的认识; 4.时刻记住:用户界面和接口要与核心算法和处理分开一些; 5.要知道:程序流程图分很多种; 6.请关注《More Exceptional C++》和《Effective STL》; 7.学会配置集成开发环境,充分利用集成开发环境带来的便利; 8.请学习CMM(能力成熟度模型)的知识; 9.请看<kingofark关于学习C++和编程 阅读全文
posted @ 2012-08-27 17:25 做一个内心安静的人 阅读(149) 评论(0) 推荐(0) 编辑
摘要: <Kingofark's 50 Points of View About Learning C++ And Programming>Revision 1.0 1.把C++当成一门新的语言学习(和C没啥关系!真的。); 2.看《Thinking In C++》,不要看《C++变成死相》; 3.看《The C++ Programming Language》和《Inside The C++ Object Model》,不要因为他们很难而我们自己是初学者所以就不看; 4.不要被VC、BCB、BC、MC、TC等词汇所迷惑——他们都是集成开发环境,而我们要学的是一门语言; 5.不要放过 阅读全文
posted @ 2012-08-27 17:24 做一个内心安静的人 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 多态实现可分为:静态动态(编译时多态):主要通过函数和运算符重载来实现;动态动态(运行时多态):主要通过继承和虚函数来实现.函数重载说的简单就是: 类中存在相同函数名且参数列表不同的多个函数,可称之为函数重载.多态性的实现与静态联编、动态联编有关。静态联编支持的多态性称为编译时的多态性,也称静态多态性,它是通过函数重载和运算符重载实现的。动态联编支持的多态性称为运行时的多态性,也称动态多态性,它是通过继承和虚函数实现的。 阅读全文
posted @ 2012-08-16 10:42 做一个内心安静的人 阅读(1057) 评论(0) 推荐(0) 编辑
摘要: 深度探索c++对象模型中是这样说的:那是被编译器插进去的一个char ,使得这个class的不同实体(object)在内存中配置独一无二的地址。也就是说这个char是用来标识类的不同对象的 参考资料:深度探索c++对象模型 阅读全文
posted @ 2012-08-16 09:49 做一个内心安静的人 阅读(2595) 评论(3) 推荐(0) 编辑
摘要: int is 16 bits (the same as short) for older IBM PC implementations and 32 bits (the same as long) for Windows XP,Windows Vista,Windows 7, Macintosh OS X,VAX, 阅读全文
posted @ 2012-08-15 16:24 做一个内心安静的人 阅读(155) 评论(0) 推荐(0) 编辑
摘要: The more complex the program, the more valuable comments are. Not only do they help others to understand what you have done, but also they help you understand what you’ve done, especially if you haven’t looked at the program for a while. 阅读全文
posted @ 2012-08-15 11:12 做一个内心安静的人 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 攻略: 打开盒子 点击照片,游戏开始。 1.石头阶梯旁边有松动的砖,点击得到大门钥匙,进门 2.进门是楼梯间,调查壁画得到半张纸条。进入左边房间,得到火柴 3.上2楼,右边第一间房间得到蝴蝶宝石,记录旁边壁画车子轮子白色的位置。 4.2楼右边第二间房间,拿鱼缸,床下面得到象棋。 5.回到一楼,进入右边第一间房,桌子上放入象棋,得到2楼左边第一道门的钥匙 6.上到2楼左边第一间房,点箱子玩拼图,很简单,完成后放入蝴蝶宝石,打开箱子得到磁铁,记录箱子底下图案的形状。 7.回到楼梯间,掀开地毯,使用磁铁得到音叉 8.到右边柴房(右边门打开,第3道门之后),柴房门口可以得到柴,对着金属耳朵使用音叉,进 阅读全文
posted @ 2012-08-09 13:36 做一个内心安静的人 阅读(1129) 评论(0) 推荐(0) 编辑
摘要: 基本概述虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如下图所示。类D继承自类B1、B2,而类B1、B2都继承自类A,因此出现如右图所示的局面(非虚基类)。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚拟基类。最后形成如左图所示的情况。 实现的代码如下:classA;//忽略C1和C2classB1:publicvirtualA;classB2:publicvirtualA;classD:publicB1,publicB2;虚拟继承入门为什么要引入虚拟继承?虚拟继承在一般的应用中很少用到,所以也往往被忽视,这也主要是因为在C++中,多重继承是不推荐 阅读全文
posted @ 2012-08-08 16:52 做一个内心安静的人 阅读(450) 评论(0) 推荐(0) 编辑
摘要: \d [ table ]列出数据库中的表,或(如果声明了)表 table 的列/字段.如果表名是用统配符 (“*”)声明的,列出所有表和表的列/字段信息.\da列出所有可用聚集.\dd object列出 pg_description 里对声明的对象的描述,对象可以是一个表,表中的列/字段,类型,操作符或聚集.小技巧:并非所有对象在 pg_description 里有描述.此后期命令在快速获取 Postgres 内部特性时很有用.\df列出函数.\di只列出索引.\do只列出操作符.\ds只列出序列.\dS列出系统表和索引.\dt只列出非系统表.\dT列出类型.\e [ filename ]编辑 阅读全文
posted @ 2012-08-08 11:51 做一个内心安静的人 阅读(530) 评论(0) 推荐(0) 编辑
摘要: 编者按:原文作者EricLippert是一名资深软件设计工程师,从1996年起一直在微软开发部门任职,协助设计并实现VBScript、 JScript、JScript.NET、Windows Script Host、Visual Studio Tools for Office 和 C#。 Escalation的工程师JeremyK在他的博客中问到:你是怎么教人们快速深入挖掘不熟悉的代码(不是自己所写的)?我学习如何编程的方法很传统 —— 自己动手编码。但我现在很纠结:到底是集中精神阅读源码,还是自己编写。对我而言,似乎唯一有效的方法就是自己写过。 不是和Jeremy开玩笑,写代码的确没... 阅读全文
posted @ 2012-08-01 08:50 做一个内心安静的人 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 在编写程序的时候很多种情况下我们都需要计时,比如我们在测试软件的性能时,或者一个和时间有关的软件时boost.timer就特别有用,boost.timer 提供两个类cpu_timer 和 auto_cpu_timer,它们都包含在boost::timer命名空间内。auto_cpu_timer废话不多说先看一个例子://ifonwin32thismaketheprogramautolinktodynmelibrary#defineBOOST_ALL_DYN_LINK#include<boost/timer/timer.hpp>voidfunc(somearguments){... 阅读全文
posted @ 2012-07-31 13:17 做一个内心安静的人 阅读(7396) 评论(0) 推荐(0) 编辑
摘要: 本文首先介绍了boost.log的几个重要的概念,然后分析其框架结构,最后详细解析了一段示例代码,并总结了将boost.log应用到自己的程序中时的步骤。 1. 几个概念 日志记录:一个独立的消息包,这个消息包还不是实际写到日志里的消息,它只是一个候选的消息。 属性:日志记录中的一个消息片。 属性值:那就是上面所说的属性的值了,可以是各种数据类型。 日志槽(LOG SINK):日志写向的... 阅读全文
posted @ 2012-07-30 14:38 做一个内心安静的人 阅读(5039) 评论(0) 推荐(1) 编辑
摘要: ★ 相同点: 1. 都是地址的概念; 指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。★ 区别: 1. 指针是一个实体,而引用仅是个别名; 2. 引用使用时无需解引用(*),指针需要解引用; 3. 引用只能在定义时被初始化一次,之后不可变;指针可变; 引用“从一而终” ^_^ 4. 引用没有 const,指针有 const,const 的指针不可变; 5. 引用不能为空,指针可以为空; 6. “sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小; typeid(T) == typeid(T& 阅读全文
posted @ 2012-07-30 08:50 做一个内心安静的人 阅读(321) 评论(0) 推荐(0) 编辑