自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (8)
  • 收藏
  • 关注

原创 C++ Tips(3): Regarding Template

<br />暂时参考我之前博文:<br />STL源码剖析 - 模板类中的友元函数<br />template函数和函数的重载的调用判断<br /> 

2010-07-29 13:09:00 542

原创 C++ Tips(2): Regarding Const

<br />今天的内容是const. 有几点不得不说:const是compile-time的,不影响runtime.所以不会影响效率对于传参数中用到const,  在值类型时不需要使用, 因为值类型始终会有个拷贝,所以加了const也没用, 只需要在传指针和引用时使用.在const的对象上只能调用const的成员方法.const会加入方法的重载决议, 所以可以针对const的版本进行重载.int*隐式转const int*允许, 而const int* 隐式转int*不允许const指针仅仅保证无法通过这个

2010-07-27 17:09:00 611

原创 C++ Tips(1): Regarding Inheritance

今天起开始总结一些C++中的Tip, 首先开始的是继承.我们知道在c++中,父类中的私有函数在子类中是不可见, 这的确是正确的. 但是这个却对于virtual的方法无效.如下所示, 尽管在父类中P1,P2是私有的,但是在子类中依然可以重写这2个virtual的方法. 并且可以在子类中扩大重写方法的可见性.下面的代码描述了template design pattern, 定义一个骨架, 并且在子类中将细节的小片方法重写达到动态的目的, 同样也可保证virtual的可见性,将不能被直接访问到. #include

2010-07-26 21:55:00 641

转载 (转)内存映射文件分析

<br />内存映射文件提供了一个统一的内存管理特征,使得应用程序能够通过内存指针象访问动态内存一样对磁盘上的文件进行访问。通过内存映射文件,您可以将磁盘上文件的全部和部分映射为一个视图到进程虚拟地址空间的某个位置。一旦完成了映射视图,对文件内容的访问就如同在该地址区域内直接对指针取值一样简单。这样,向文件中写入数据就可以直接对指针进行赋值,如:<br />*pMem = 23;<br />同样,从文件的某个特定位置读取数据也一样非常的简单:<br />nTokenLen = *pMem;<br />在这个

2010-07-22 22:30:00 1341

原创 Tip: 如何保证一个类只能在堆上被创建

<br />有的时候为了保证一个类的对象必须在堆上被创建, 比如当我们需要手动控制一个对象的生命周期的时候, 这个时候就必须保证这个对象是在堆上创建的, 如何保证呢, 有个小的技巧:<br /> <br />class A <br />{<br />public:<br />    void Close() {delete this; }<br />private:<br />    ~A() { ... };<br />};<br /> <br />int main()<br />{<br />    A

2010-07-18 13:56:00 987 2

原创 可以做non-type tamplate argument 的类型

<br /> 直接上例子:<br /> <br />    template <bool> <br />    struct StaticCheck { StaticCheck(...);}; <br />    template <> <br />    struct StaticCheck<false> {}; <br /> <br />    bool f =false;<br />    StaticCheck<f>();<br /> <br />报错: Error 1 error C2971: '

2010-07-11 14:11:00 661

转载 (转)同步/异步与阻塞/非阻塞的区别

<br />可见,同步/异步与阻塞/非阻塞是两组不同的概念,它们可以共存组合,也可以参见这里:http://www.ibm.com/developerworks/cn/linux/l-async/   同步和异步:上面提到过, 同步和异步仅仅是关于所关注的消息如何通知的机制,而不是处理消息的机制.也就是说,同步的情况下,是由处理消息者自己去等待消息是否被触发,而异步的情况下是由触发机制来通知处理消息者,所以在异步机制中,处理消息者和触发机制之间就需要一个连接的桥梁,在我们举的例子中这个桥梁就是小纸条上面的号

2010-07-10 21:46:00 598

原创 TCP关闭全状态记录

 关闭时状态转变:client:   Fin_wait_1 -> Fin_wait_2 -> Time_wait -> closedserver: Close_wait -> Last_ack -> closedFin_wait_1 发生在client 发出Fin包后, 并等待server 回 ack 时.Fin_wait_2 发生在client收到ack包后, 并等待server发出Fin包时.Time_wait 发生在client收到Fin包并发出ack包后, 在等待2msl的时间时.Close_wai

2010-07-07 18:31:00 3452 1

原创 Sharing files between windows and linux

<br />In hype-v, only legacy network adapter can be used in linux vm.<br /> <br />sharing files between linux and windows:<br />mount -t cifs -o username=x,password=x //host/ /mnt/x<br /> <br />Notice: Please expose your 445 port.

2010-07-06 20:10:00 517

原创 Emacs memorandum

1. C - @ select text region.

2010-07-03 16:49:00 584

原创 gcc occurs __gxx_personality

<br />try to use gcc -lstdc -o test test.cpp

2010-07-02 20:40:00 585

转载 (转)SSl加密详解及CBC原理

<br />/* full   handshake. <br />  <br />            Client                                                                                               Server <br /><br />            ClientHello                                     --------> <br />       

2010-07-01 13:55:00 2459

Windows 用户态程序高效排错 完整版 熊力

Windows 用户态程序高效排错完整版 熊力著

2009-12-27

Modern+C+++Design+(清晰可编辑版全)

Modern C++ Design的清晰可编辑版本

2009-06-20

COM+的好书-COM\深入理解COM+.

COM+的好书,是入门和进阶的必要的一本书~~~~~~~~~

2009-04-20

vc屏幕取词的源码程序

用VC写的屏幕取词程序,很有参考价值...........

2009-04-18

空空如也

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

TA关注的人

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