前面我已经总结了在csharp中如何auto versionning来管理Assembly的版本号。本文总结一下在C++下如何方便的管理DLL的版本号。
C++ 中的智能指针
C++ 11中共有四种智能指针(Smart Pointers):std::auto_ptr
,std::unique_ptr
,std::shared_ptr
,std::weak_ptr
。其中std::auto_ptr
是在C++98中就引入的智能指针,在C++11中已经被std::unique_ptr
所取代。所以本文主要讨论讨论剩下的三种智能指针。
C++ 11带来的新特性
bitwise copy vs memberwise copy
本文转自Stack Overflow,对几种copy的概念将的通熟易懂。
同步与锁
本文摘录自《程序员的自我修养》第一章。
build c/c++ extension for python
本文记录下如何在python中调用C/C++中函数。本文主要参考MSDN 中Create a C++ extension for Python 一文。
由sizeof引起的问题
最近在看Lippman的《Inside the c++ object model》,书中Lippman说有人发邮件问了他一个问题。
1 | class X {}; |
根据以上定义,使用sizeof运算符分别计算类X,Y,Z,A的所占大小。
VMware虚拟机中设置网络代理
本文是为vmware中安装的ubuntu设置代理的备忘。
vtable and object memory layout in cpp
在C语言中,data和function是独立的entity,换句话说data和function是没有直接关联的。所以说使用C编程是面向过程编程,使用一个个的function来操作外在的data。而在C++中,通过Class将data和function集合在一起,形成一个Object。通过面向对象编程的三大特点:1)封装2)继承3)多态 来实现更好的灵活性。
WPF中遇到的一个关于RadioButton的数据绑定问题
最近在重构代码的时候遇到一个WPF相关的问题,在使用MVVM pattern时,给WPF RadioButton建立绑定数据源时,理所当然的想到使用boolean类型。但是发生了一个奇怪的现象。废话不多说,直接上sample 代码。