金庆的专栏
C++博客
::
首页
::
新随笔
::
联系
::
聚合
::
管理
::
423 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks
公告
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(11)
给我留言
查看公开留言
查看私人留言
随笔分类
(502)
1. C/C++(166)
(rss)
2. 网游开发(108)
(rss)
3. Golang(20)
(rss)
4. Linux/Unix(30)
(rss)
5. 软工与管理(44)
(rss)
6. Python(23)
(rss)
7. Erlang(18)
(rss)
8. Rust(16)
(rss)
9. 其它(77)
(rss)
随笔档案
(423)
2023年1月 (1)
2022年11月 (1)
2022年10月 (2)
2022年9月 (1)
2022年4月 (6)
2022年1月 (2)
2021年12月 (4)
2021年11月 (6)
2021年10月 (2)
2021年9月 (2)
2021年8月 (7)
2021年7月 (2)
2021年5月 (2)
2021年3月 (1)
2021年2月 (2)
2021年1月 (1)
2020年12月 (1)
2020年10月 (1)
2020年9月 (5)
2020年8月 (1)
2020年7月 (1)
2020年6月 (1)
2020年4月 (2)
2020年3月 (3)
2020年2月 (3)
2020年1月 (1)
2019年12月 (1)
2019年9月 (2)
2019年4月 (2)
2019年1月 (1)
2018年12月 (1)
2018年11月 (3)
2018年10月 (1)
2018年9月 (3)
2018年8月 (3)
2018年7月 (2)
2018年6月 (4)
2018年5月 (4)
2018年4月 (4)
2018年3月 (1)
2018年1月 (2)
2017年12月 (2)
2017年11月 (3)
2017年10月 (3)
2017年8月 (7)
2017年7月 (1)
2017年6月 (1)
2017年5月 (3)
2017年4月 (3)
2017年3月 (3)
2017年2月 (2)
2017年1月 (2)
2016年12月 (5)
2016年11月 (2)
2016年10月 (2)
2016年9月 (1)
2016年8月 (6)
2016年7月 (3)
2016年6月 (2)
2016年5月 (4)
2016年4月 (2)
2016年3月 (2)
2016年1月 (3)
2015年12月 (2)
2015年11月 (2)
2015年10月 (1)
2015年8月 (2)
2015年7月 (1)
2015年6月 (1)
2015年5月 (4)
2015年4月 (3)
2015年3月 (4)
2015年2月 (5)
2015年1月 (4)
2014年12月 (3)
2014年11月 (3)
2014年10月 (2)
2014年9月 (3)
2014年8月 (1)
2014年4月 (4)
2014年3月 (1)
2014年2月 (4)
2014年1月 (5)
2013年12月 (5)
2013年11月 (5)
2013年9月 (2)
2013年8月 (2)
2013年7月 (2)
2013年6月 (2)
2013年5月 (1)
2013年1月 (2)
2012年12月 (1)
2012年11月 (1)
2012年9月 (1)
2012年8月 (3)
2012年7月 (2)
2012年6月 (1)
2012年4月 (3)
2012年3月 (2)
2012年2月 (3)
2012年1月 (2)
2011年11月 (2)
2011年10月 (3)
2011年9月 (2)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年5月 (3)
2011年1月 (2)
2010年12月 (1)
2010年11月 (2)
2010年10月 (2)
2010年9月 (3)
2010年8月 (2)
2010年7月 (3)
2010年6月 (1)
2010年5月 (3)
2010年4月 (3)
2010年3月 (5)
2010年2月 (4)
2010年1月 (4)
2009年12月 (2)
2009年11月 (3)
2009年10月 (4)
2009年9月 (3)
2009年8月 (2)
2009年7月 (4)
2009年6月 (1)
2009年5月 (3)
2009年4月 (4)
2009年3月 (2)
2009年2月 (5)
2009年1月 (1)
2008年12月 (7)
2008年11月 (4)
2008年10月 (1)
2008年9月 (3)
2008年8月 (4)
2008年7月 (3)
2008年6月 (4)
2008年5月 (6)
2008年4月 (7)
2008年3月 (6)
2008年1月 (5)
2007年12月 (7)
2007年11月 (4)
2007年10月 (5)
2007年9月 (6)
2007年8月 (8)
2007年7月 (5)
相册
公告照片
搜索
积分与排名
积分 - 648174
排名 - 25
最新评论
1. re: boost::asio::spawn 将一统C++网络库
asio 成为C++首选网络库
--linda
2. re: log4cxx中文输出错误补丁
评论内容较长,点击标题查看
--金庆
3. re: mingw编译OrzNet
能发送一个mingw编译好的OrzNet库给我吗? liuweiqcxy@163.com
谢谢!
--刘威
4. re: log4cxx中文输出错误补丁
评论内容较长,点击标题查看
--bigbad
5. re: log4cxx中文输出错误补丁
评论内容较长,点击标题查看
--bigbad
阅读排行榜
1. "multiple definition of" 错误(10959)
2. SVN中邪恶的replace(10888)
3. VS2005编译libevent(10390)
4. 混音算法的学习与研究(10107)
5. C调用lua脚本的效率测试(8985)
评论排行榜
1. VC6正在被抛弃(35)
2. VS2005编译libevent(21)
3. "multiple definition of" 错误(18)
4. C++引用优于指针(17)
5. ACE与ASIO之间关于Socket编程的比较(16)
#
Boost.Singals 教程
摘要: 本教程不是用来线性阅读的。 其顶层结构大致按库中不同的概念划分,(如处理调用多个插槽、传值到插槽及回传),并且在每一个这些概念中,首先介绍其基本思想,然后说明库较复杂的使用。 每个部分都标注了初级、 中级,或高级,以帮助指导读者。 初级部分包括库的所有使用者都该了解的信息;只要阅读了初级部分,就可以很好地使用信号库。 中级部分建立在初级 部分之上,是库的稍复杂的使用。 最后,高级部分详述了信号库很高级的应用,这往往需要对初级和中级内容扎实的实践经验;大多数用户无需阅读高级部分
阅读全文
posted @
2008-06-30 14:55
金庆 阅读(2178) |
评论 (3)
|
编辑
收藏
Boost.Python中文文档下载
摘要: 下载:Boost.Python中文文档
Boost文档中Python库文档的翻译。
阅读全文
posted @
2008-06-16 11:30
金庆 阅读(1827) |
评论 (0)
|
编辑
收藏
修改Boost.date_time代码兼容VC6
摘要: Boost.date_time库明确不支持VC6。实际上,只要稍作修改,就可兼容VC6。而且只是代码风格上的调整,修改后比原来的代码更简洁。
阅读全文
posted @
2008-06-12 09:59
金庆 阅读(2050) |
评论 (3)
|
编辑
收藏
选特化还是重载
摘要: 一个函数模板即有特化版又有重载版,编译器会选哪个?以下代码来自:为什么不要特化函数模版 的例3
阅读全文
posted @
2008-06-11 11:03
金庆 阅读(1338) |
评论 (4)
|
编辑
收藏
用Boost.Python构建混合系统
摘要: Boost.Python是一个开源C++库,它提供了一个简明的IDL式的接口,用于把C++类和函数绑定到Python。借助C++强大的编译时内省能力和最近发展的元编程技术,绑定工作完全用纯C++实现,而没有引入新的语法。 Boost.Python丰富的特性和高级接口,使得完全按混合系统设计软件包成为可能,并让程序员以轻松连贯的方式,同时使用 C++高效的编译时多态,和Python极端便利的运行时多态。
阅读全文
posted @
2008-05-29 13:11
金庆 阅读(7631) |
评论 (15)
|
编辑
收藏
Python封装的性能研究
摘要: SIP generates the fastest wrappers; SWIG is mature and well documented; Boost.Python most elegant integration of C++ and Python
阅读全文
posted @
2008-05-23 11:39
金庆 阅读(756) |
评论 (0)
|
编辑
收藏
RAII:资源获取即初始化
摘要: 资源获取即初始化(RAII, Resource Acquisition Is Initialization)是指,当你获得一个资源的时候,不管这个资源是对象、内存、文件句柄或者其它什么,你都会在一个对象的构造函数中获得它,并且在该对象的析构函数中释放它。可以依据资源可变性和资源来源这两个特征,来对RAII进行分类。
阅读全文
posted @
2008-05-20 14:24
金庆 阅读(6306) |
评论 (0)
|
编辑
收藏
用结构体来构造封闭的名字空间
摘要: C++关键字namespace提供的名字空间是开放的:你可以在任何时候扩展其中的内容。只要另外声明一个同名的名字空间即可。为得到真正封闭的名字空间,你需要使用class/union/struct,就像这样
阅读全文
posted @
2008-05-19 16:44
金庆 阅读(1331) |
评论 (0)
|
编辑
收藏
wxWidgets库的依赖顺序
摘要: 用CodeBlocks编译一个wxWidgets应用程序时,总是出现"undefined reference"。这里有两个问题,一是需要添加wxWidgets相关的库,二是这些库要按一定的顺序列出。
阅读全文
posted @
2008-05-15 14:13
金庆 阅读(1781) |
评论 (1)
|
编辑
收藏
发现错误是好事
摘要: 在设计时发现错误总比在编码编译时发现好。在编码编译时发现错误总比在单元测试中发现好。在单元测试中发现错误总比在调试中发现好。在调试中发现错误总比在系统测试中发现好。在系统测试中发现错误总比让用户发现好。让用户发现错误总比没有用户好。
阅读全文
posted @
2008-05-08 15:38
金庆 阅读(337) |
评论 (0)
|
编辑
收藏
用 (*it).m 还是 it->m
摘要: 在迭代器中支持指针成员选取运算符,没什么实质的意义,而仅仅是语法糖。我认为标准中将这规定为迭代器概念的一个特性是严重的错误。
阅读全文
posted @
2008-04-24 10:16
金庆 阅读(1954) |
评论 (5)
|
编辑
收藏
STL序列容器的存储连续性
摘要: C++标准库提供了四种序列容器:deque、list、vector,和basic_string。第四种序列容器basic_string,主要用于表示字符串,但它确实是不折不扣的序列容器,所以如果你非要这样做的话,你也可以用它来保存char和wchar_t以外的数据。在标准库中的容器中,只有vector保证其元素的存储空间是连续的。因此,它和C API兼容。
阅读全文
posted @
2008-04-23 15:36
金庆 阅读(2132) |
评论 (2)
|
编辑
收藏
STL与标准库
摘要: 在C++的世界里,STL这个术语是有歧义的。有很多C++纯化论者会抓住一切机会纠正你对"STL"这个术语的错用,而告诉你应该使用"标准库"这样的称呼。 严格来说,STL指的是由Stepanov和他的同事们在上世纪80年代到90年代开发的、基于六个核心概念的通用模板库。
阅读全文
posted @
2008-04-22 17:25
金庆 阅读(2344) |
评论 (1)
|
编辑
收藏
模板参数名命名惯例
摘要: 模板参数一般是一个或者两个大写字母,例如T(type/value-type)、S(sequence/string)、 C(container/character)、VP(value policy type)等等。 这样做有两个原因。
阅读全文
posted @
2008-04-21 17:25
金庆 阅读(2170) |
评论 (10)
|
编辑
收藏
log4delphi试用
摘要: 不管怎样,让我找到了log4delphi。明显国内用的人不多,不知大家是否有更好的日志类。
对我来说,log4delphi与log4j、log4cpp如出一辙,正合我意。
0.7版,近两年没更新了。看SVN也是没有任何更新。
下载了看,文档相当全。
阅读全文
posted @
2008-04-09 17:13
金庆 阅读(2020) |
评论 (0)
|
编辑
收藏
显示wxStaticBitmap的窗口
摘要: 如果不创建wxPanel,只创建wxStaticBitmap,窗口大小变化时,图片显示会不正常,并且指定图片位置和大小无效。wxStaticBitmap的父窗口是fmMain或pnl都可以。
阅读全文
posted @
2008-04-07 11:37
金庆 阅读(1444) |
评论 (2)
|
编辑
收藏
POD相关定义的翻译
摘要: POD(Plain Old Data,普通旧式数据)的定义中,有三个相关的术语
阅读全文
posted @
2008-04-01 10:03
金庆 阅读(1336) |
评论 (0)
|
编辑
收藏
XRCed生成的代码分析
摘要: XRCed是wxPython附带的UI设计器,生成xrc资源文件,也可以输出python代码。本文对XRCed输出的python代码进行分析。
阅读全文
posted @
2008-03-26 13:23
金庆 阅读(3543) |
评论 (9)
|
编辑
收藏
XRC初步
摘要: XRC的基本出发点是界面布局和程序逻辑的分离,即将界面布局代码采用XML的方式放在分离的文件之中;在程序中不涉及控件的创建和布局,只需要加载相应的资源并处理事件绑定即可。
阅读全文
posted @
2008-03-24 13:52
金庆 阅读(4792) |
评论 (1)
|
编辑
收藏
翻译记忆OmegaT试用
摘要: OmegaT是开源的翻译记忆软件,功能类似于Trados。
但是据说Trados学习使用较难,所以选个开源的OmegaT试试。
阅读全文
posted @
2008-03-20 09:16
金庆 阅读(1596) |
评论 (1)
|
编辑
收藏
编译boost
摘要: 每次用bjam编译boost总是要查看帮助文件才行。
虽然现在的bjam编译命令只有两三个参数,可是不小心还是会错。
阅读全文
posted @
2008-03-17 17:21
金庆 阅读(1875) |
评论 (2)
|
编辑
收藏
VC6正在被抛弃
摘要: boost.asio库明确说明不支持VC6。 stlsoft库某些组件无法兼容VC6(详细阅读了《Extended STL》,才知道为了VC6要耗费大量的精力,有些组件本身已很复杂,以至于需要排除VC6才能实现。) 今天使用boost.date_time时又发现VC6不行了。
阅读全文
posted @
2008-03-14 15:58
金庆 阅读(6273) |
评论 (35)
|
编辑
收藏
批量html转text
摘要: 原来的代码是参考“Recipe 12.11. Using MSHTML to Parse XML or HTML”,利用htmlfile提取文本。将当前目录下的所有html文件转换为text文件。jigloo经过对10W+个html文件的测试,得出结论,htmlfile的容错比InternetExplorer.Application要差很多。
阅读全文
posted @
2008-03-13 11:55
金庆 阅读(1711) |
评论 (1)
|
编辑
收藏
滥用ini配置文件造成崩溃
摘要: 不过一直有个问题,就是写ini文件时断电的后果。前几天终于遇上了,断电后发现配置文件正好被清空了。结果程序因为缺乏必要的配置,根本无法运行。
阅读全文
posted @
2008-01-29 12:16
金庆 阅读(2459) |
评论 (8)
|
编辑
收藏
Boost.Python构建与测试HOWTO
摘要: 使用Boost.Python不需要“安装Boost”。这里的教程利用了 Boost.Build 项目,它会在需要时自动构建那些二进制库。当然,也可以使用其他的编译系统。所有“我无法编译Boost.Python”的问题, 99%以上是因为试图使用另一种编译系统,而没有先按这个教程做。
阅读全文
posted @
2008-01-17 15:14
金庆 阅读(3221) |
评论 (2)
|
编辑
收藏
bjam编译boost失败及原因
摘要: 用bjam在各种环境下编译Boost , 没有十次也有八次了,但是前两天在一台XP上编译时,竟然失败。 查看输出,竟然是在创建目录时失败。信息如下:
阅读全文
posted @
2008-01-11 09:38
金庆 阅读(1930) |
评论 (1)
|
编辑
收藏
对临时变量的引用
摘要: 以下代码来自《Imperfect C++》,输出是0, 2222还是0, 0?
阅读全文
posted @
2008-01-10 11:36
金庆 阅读(1738) |
评论 (11)
|
编辑
收藏
比较C++数组元素引用的两种形式a[0]与0[a]
摘要: 对于一个数组ar,求其最外层的维数。 C语言当中惯用的是 sizeof(ar) / sizeof(ar[0]),可是在stlsoft库中是 sizeof(ar) / sizeof(0[ar])。 以前从没见过数组元素引用使用这样的形式:0[ar],能行吗?但是为什么用0[ar]呢?生僻的用法降低了可读性。是不是有什么优点呢?都是编译期计算,应该没有性能上的差别。
阅读全文
posted @
2008-01-02 11:27
金庆 阅读(2563) |
评论 (4)
|
编辑
收藏
使用完成端口HTTP下载的代码
摘要: 试运行asio的async_client例程时,发现CPU占用很高,所以又写了一个相同功能但直接调用完成端口API的代码,进行比较,发现同样占用CPU。
阅读全文
posted @
2007-12-24 16:25
金庆 阅读(2318) |
评论 (4)
|
编辑
收藏
可重入和线程安全
摘要: 可重入函数要解决的问题是,不在函数内部使用静态或全局数据,不返回静态或全局数据,也不调用不可重入函数。线程安全函数要解决的问题是,多个线程调用函数时访问资源冲突。函数如果使用静态变量,通过加锁后可以转成线程安全函数,但仍然有可能不是可重入的,比如strtok。
阅读全文
posted @
2007-12-19 15:15
金庆 阅读(1329) |
评论 (0)
|
编辑
收藏
wxPython中XRC文件i18n示例
摘要: wxPython中XRC文件i18n有两种方法,一种是使用多个XRC文件,每个语种一个XRC,另一种是只用一个XRC文件,各个语言使用一个mo翻译文件。本文是按照“wxPython中XRC文件对 i18N的支持”一文的指示,演示使用mo文件对XRC文件进行国际化翻译。
阅读全文
posted @
2007-12-17 12:22
金庆 阅读(1991) |
评论 (0)
|
编辑
收藏
boost::static_assert
摘要: BOOST_STATIC_ASSERT是一个简单但常用的宏,顾名思义起到编译期断言的功效,可以通过它,在编译时对开发环境以及类型定义进行检查。此类型检测对程序运行时无任何效率和空间上的影响。在实现上,BOOST_STATIC_ASSERT宏利用c++规范中,对不完整类型即不可实例化的类型,在对其进行sizeof运算时编译错误的特性,完成功能。
阅读全文
posted @
2007-12-14 10:02
金庆 阅读(1011) |
评论 (1)
|
编辑
收藏
istream_iterator常见的错误说明
摘要: 看到一段istream_iterator的使用代码,读取文件test.txt,将其中字符串输入到一个vector。STL中模板的大量使用,使得编译器的报错不知所云,让人对STL的应用望而却步。学习STL不仅要掌握STL中各种容器类,迭代器,算法,同时还要熟悉编译器常见的错误报告。
阅读全文
posted @
2007-12-12 11:41
金庆 阅读(3641) |
评论 (2)
|
编辑
收藏
TLMDTrackBar造成程序启动时崩溃
摘要: TLMDTrackBar造成程序启动时崩溃。原因是创建窗体时,触发了TLMDTrackBar的OnChange事件。而此时窗体中的控件还没有全部创建完成,在事件中引用其它尚未创建的控件就会造成程序崩溃。但是标准的TTrackBar就不会在创建时触发OnChange事件。
阅读全文
posted @
2007-12-04 15:08
金庆 阅读(789) |
评论 (0)
|
编辑
收藏
可以用IRC代替例会吗
摘要: 我个人认为,这种做法对时间和效率太抠门,反而得不偿失。 Scrum Meeting一般不会超过15分钟,本身已经是高效了。为了压缩成5分钟,就取消了面对面交谈的机会,实在是不合算。
阅读全文
posted @
2007-12-03 10:36
金庆 阅读(957) |
评论 (2)
|
编辑
收藏
用list.sort(key)排序
摘要: 一个文件路径链表,需要按文件时间与文件名排序,先按时间排,时间相同按文件名排,代码如下。但是用key函数排序更高效。因为key只对每个项应用一次,然后按key值排序。而cmp函数必须两两比较才行。
阅读全文
posted @
2007-11-21 10:36
金庆 阅读(3204) |
评论 (0)
|
编辑
收藏
敏捷就是无招胜有招
摘要: 软件工程与敏捷抓住了软件开发的不同方面。软件工程的强处在于技术性实践;而敏捷的优势则是社会工程。个人认为:软件工程是心中有招,而敏捷是无招胜有招。
阅读全文
posted @
2007-11-15 14:09
金庆 阅读(971) |
评论 (1)
|
编辑
收藏
把private声明从.h文件移到.cpp文件
摘要: 在*.h文件中定义一个类时,理论上应该仅定义其公共接口,而不必声明其私有的成员,因为私有的成员属于实现部分,理应声明在.cpp文件中。 可是现有的C++标准是不支持将一个类的定义分到两个文件中去的。 有一个pimpl模式,可以变相完成这个要求。
阅读全文
posted @
2007-11-09 12:07
金庆 阅读(1903) |
评论 (13)
|
编辑
收藏
评高效程序员应该养成的七个习惯
摘要: 其中我对第4点中的观点不太赞同:“把你的时间花在代码的功能上, 而不是去把现有的代码改得对自己胃口(尤其对于那些copy/paste过来的代码);要找到系统的瓶颈进行优化,而不是对那些无益于系统整体性提高的地方做无用功。”因为最近总计至少有一周多的时间,我正是处理与功能和性能无关的代码更改。添加新功能之前,查看是否有重构的必要,这应该也是高效程序员的习惯之一吧。
阅读全文
posted @
2007-11-03 10:58
金庆 阅读(1873) |
评论 (6)
|
编辑
收藏
混音算法的学习与研究
摘要: 曾经看到这样一篇混音新算法的转载文章[3],一直想应用一下。再次翻到那篇文章,算法很简单,表达也很清晰,就是不知道原理。如果对多路混音该如何扩展算法呢?看来不能盲目照搬没有根据的算法。作者自己说,该算法对于5个通道以上就不太好,算法的好处是不会溢出。但有人反映声音有饱和的趋向。
阅读全文
posted @
2007-10-31 17:27
金庆 阅读(10107) |
评论 (5)
|
编辑
收藏
仅列出标题
共11页:
First
3
4
5
6
7
8
9
10
11
Powered by:
C++博客
Copyright © 金庆