接上一篇 VC和GCC内成员函数指针实现的研究(一) 接下来是多重继承,用到的测试代码如下所示: #include <ctime> #include <vector> #include <algorithm> #include <cstdio> #include <stdint.h> #include <cstddef> #include <string> class foo_a { public: virtual ~foo_a(){} virtual void info() {

今天看到一个小例子,发现了一个小trick。见代码: #include <cstdio> #include <cstdlib> class base_1 { public: int a; }; class base_2 { public: int b; }; class base_3: public base_1, public base_2 { public: int c; }; int main(int argc, char* argv[]) { printf("&base_1::a = %p\n", &base_1::a); printf("&base_2::b = %p\n", &base_2::b); printf("&base_3::a

最近看了点typescript的东西,加上以前看过的一点点Node.js,所以就想把他们系统地整理一下。 Javascript 这玩意搞过Web开发的应该都知道吧

写这个小结主要是因为之前研究Boost.Asio的时候,其内部使用了很多不同的方法来实现异步网络编程 然后就顺便把一些高级的玩意看了一下,也顺

慢慢一点一点看看Boost,这段时间就Asio库吧。 据说这货和libevent的效率差不多,但是Boost的平台兼容性,你懂得。还有它帮忙干

Linux 编译安装 GCC 4.8 详见: Linux 编译安装 GCC 4.8 GCC4.8发布啦,这个脚本在之前4.7的基础上做了点改进,移除一些过时的组件,增加了检测不到时自动下载源

使用代码生成代码是一件十分美妙的事情,于是有了各种代码生成器。但是生成代码,意味着要有对生成规则的分析和处理。 Boost.Spirit 就是这么一个语法分析工具,它

前言 C++确实是一门复杂的语言。包括之前查看了一些C++11的文档和做了一些实践和总结,越来越觉得C++是门神奇的语言,也是个陷阱多多的语言

某个课程的作业,促使我来看看这玩意。 整个程序的算法思想是看别人的ACM的blog看懂的,感觉确实和KMP很像。但是代码呢就比较工程化一点。顺

终于要离开学校了,终于有时间可以静下来看看之前导师推荐的书籍。之前有看到说《程序员修炼之道》是对程序员影响最为深刻的书, 就从它开始吧。用这个

之前用Google的Protobuf感觉真是个很好用的东西,于是抽时间研究了下他的数据的存储方式,以后可以扩展其他语言的解析器。其实与其说是

C++ STL终于会放点实用的东西了。可喜可贺。 这个,显然是正则表达式库,作为一个强大而又NB的库,我表示对其理解甚少,只能先研究下基本用法,更具