hhf
码龄15年
关注
提问 私信
  • 博客:79,056
    社区:1,537
    80,593
    总访问量
  • 59
    原创
  • 1,829,925
    排名
  • 25
    粉丝
  • 0
    铁粉

个人简介:C / C plus plus Network Server 3D

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2010-03-24
博客简介:

qwidget的专栏

查看详细资料
个人成就
  • 获得2次点赞
  • 内容获得11次评论
  • 获得10次收藏
创作历程
  • 2篇
    2012年
  • 53篇
    2011年
  • 4篇
    2010年
成就勋章
TA的专栏
  • 3D/OGRE
    1篇
  • ACE
    1篇
  • AI/Algorithms/DataStructure
    1篇
  • C++ Gimmick
    15篇
  • Design Patterns
    21篇
  • Math/Physics
    3篇
  • My Shared Code
    5篇
  • POCO C++
    8篇
  • UI/Qt
    2篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

357人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

用Cpp11新template feature尝试metaprogramming

Cplusplus 11 发布大半年了, 基本上浏览了一遍wiki pedia上关于新feature的介绍, 个别feature已经迅速被大家广泛运用了, 剩下的由于编译器的支持问题未敢大肆使用。由于 新标准在core language中就提供了以前要一堆template才能实现的feature以及std lib中把boost的一些container搬字过纸,所以熟悉boost的人可能一看介绍马上
原创
发布博客 2012.06.06 ·
969 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

tips to include tcmalloc

vim /etc/ld.so.conf ldconfig -v-ltcmalloc
原创
发布博客 2012.02.02 ·
671 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

读完了the practice of programming

the practice of programming是第二本读完的英文原版技术书籍,很多内容早已了解,抱着锻炼英语阅读能力和顺便回顾一下一些技术知识的心态读吧,利用下班的空当,不到两个星期读完,发现自己在调试方面的观点跟作者非常相像,都更喜欢深入看代码并且打印信息,最后才是一步一步跟着debugger step through程序,最后关于notation的阐述还算小有得益,好吧,下一本是看雪的
原创
发布博客 2011.12.11 ·
764 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

日本人的技术书

最近看了两本日本人写的技术书籍,大致感受就是严谨加谦虚,第一本是debug hacks,主要讨论linux平台的调试技术,第二本是大规模web服务开发,全面讨论了一下web系统的构建,都不算太深入,但能起启迪作用,我觉得这才是最重要的,说不算太深入是没有像工具使用说明书一样一步一步介绍具体操作和各种陷阱,这真没太大必要,所以我还挺喜欢这种写法的技术书籍。
原创
发布博客 2011.12.03 ·
6946 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Pattern Hatching讲了什么

两三天内读完PatternHatching小册子,有点小幸福。 从一个文件系统设计开始讲,使用composite建立树状模型,使用proxy处理连接,访问方式上用了visitor,文件保护上用了template method,多用户保护上用了扩展的singleton,组映射上用了mediator,真有点小壮观,如同all stars game一样让人兴奋。 接着作者又八了八sing
原创
发布博客 2011.11.11 ·
821 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

六大OO设计原则

套用各种DP写一个系统,跑起来了,但后来发现真有变化来临的时候想扩展还得大规模改动甚至重写,这就是传说中的DP乱套了,达不到效果反而徒增工作量,内心惭愧,于是细读OO大师的设计信条,才慢慢明晓DP要怎么样实作才能真正达到效果,记下六大原则原文,肃清乱套之风,以作警戒。Si
原创
发布博客 2011.09.16 ·
910 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Gauss-Jordan elimination

I suppose you know what Gauss-Jordan elimination is, so the note here was just simply tell you why it can work.As you know that, if I
原创
发布博客 2011.09.12 ·
1192 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Ring a Bell : Three Sort Algorithms

The detail contents of how to code and how it works just lie in the book written by Simon Harris and James Ross, want to know more? so check
原创
发布博客 2011.08.31 ·
509 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

性能改造小记

一条专用线程负责接受连接,把新接收到的socket通知线程池,线程池派其中一条线程处理该连接,当接收连接数量超过最大线程数时不再接收新连接,直到线程池有成员空闲下来了再次通知专用线程进行接收连接,线程池中的线程皆是处理完业务立即关闭socket,认为是短连接,这里的业务暂时实现为
原创
发布博客 2011.08.30 ·
575 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Substitution Failure Is Not An Error

SFINAE原则初看是刺激的,写好之后是高效的,写错了就是既折磨编译器又折磨自己的。各种编译器对模板的支持程度又是不一样的,对待代码要有屈机精神,不然就只好向言不由衷的错误信息投降了。先旨声明,调试这里的代码用vc2008会顺利很多,template就是把编译器的功能发挥
原创
发布博客 2011.08.25 ·
882 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

模板强化Template Method & Singleton 模式

阅读之前期望你已经懂得模板方法模式及单例模式的原理。通俗软件设计模式的表述呈现由GoF先行打响头炮,其后各种版本的模式书籍层出不穷,大多示范实现都是以有多态特性的虚函数作为核心,每一个virtual function call是间接进行的,如此一来性能会有小小的损耗,但可读性良好
原创
发布博客 2011.08.25 ·
591 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

模板强化RAII

RAII的应用在C++这种高危语言中尤其重要,结合模板,效果更爽。先看应用:#include "stdafx.h"using namespace Loki;void myFree(char* s){ if (s != NULL) {  free(s
原创
发布博客 2011.08.24 ·
621 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

实现无需OO机制的观察者(性能至上)

模式大部分实现利用的是编程语言的继承多态等机制,以面向接口编程优先使用组合等等原则为实作的依归,把系统高内聚低耦合地划分了许多相对独立的类来实现拼装,模式套用多了难免出现很多类及各种子类,但却很大程度从结构上让系统的可维护性增强了,一般来说现在很多公司的OO系统就是这样做出来的。
原创
发布博客 2011.08.21 ·
824 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

boost:tuple解码

tuple想必人人都会用,究之实质,其实就是模板全特化及部分特化的又一种应用而已。简要的实现如下: template struct Tuple {  Tuple(){}  Tuple(typename traits::type_traits::const_reference a,   typename traits::type_traits::const_refer
原创
发布博客 2011.08.20 ·
913 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

linux app 无 core dump 退出的处理

1,首先要淡定。2,在程序退出之后马上echo $?,获得返回数字R。3,计算信号码和退出码: R & 0x7f = signal_no (R & 0xff00) >> 8 = exit_no4,这时就知道程序何故退出了。至于我的状况,就是没有处理SIGP
原创
发布博客 2011.08.16 ·
1032 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Tips to Handle Linux APPs Crack Shit

Problem 1: linux应用程序段错误挺常见,得淡定。一般处理手法:Solution:1.编译时加入标志-g。2.设置core文件大小。 struct rlimit res = { .rlim_cur = RLIM_INFINITY, .rlim_max
原创
发布博客 2011.08.15 ·
688 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++ traits两种用途

C++ traits两种用途1. 利用编译器为自己约束程序行为。//拒绝使用double的traits,完全特化templatestruct type_restrict{ enum{value};};templatestruct type_re
原创
发布博客 2011.08.15 ·
846 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Thread-Specific Storage

This article told the last pattern illustrated in POSA2 - Thread Specific Storage, which is such a common mechanism provided by some  operat
原创
发布博客 2011.07.30 ·
1091 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Leader/Followers

This article outlined a global view of the Leader/Followers pattern  in POSA2 as my reading note.The Leader/Followers architectural patter
原创
发布博客 2011.07.30 ·
1104 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Half-Sync/Half-Async

This article makes a brief introduction of the Half-Sync/Half-Async pattern from POSA2 as my reading note.The Half-Sync/Half-Async archite
原创
发布博客 2011.07.30 ·
1317 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多