- 博客(19)
- 资源 (50)
- 问答 (1)
- 收藏
- 关注
原创 从汇编看c++中含有虚基类对象的析构
c++中,当继承结构中含有虚基类时,在构造对象时编译器会通过将一个标志位置1(表示调用虚基类构造函数),或者置0(表示不调用虚基类构造函数)来防止重复构造虚基类子对象。如下图菱形结构所示:当构造类Bottom对象时,Bottom构造函数里面的c++伪码如下(单考虑标志位,不考虑其他)://Bottom构造函数伪码 flag = 1;//标志位 if (flag) ...
2013-07-28 00:16:00 150
原创 从汇编看c++中的placement operator new
placement operator new是重载的operator new运算符,它允许我们将对象放到一个指定的内存中。下面来看c++源码:class X {private: int _x;public: X(int xx = 0) : _x(xx) {} ~X() {} void* operator new(size_t n, ...
2013-07-27 21:27:00 111
原创 从汇编看c++的new和delete
下面是c++源码:class X {private: int _x;public: X(int xx = 0) : _x(xx) {} ~X() {}};int main() { X* xp = new X; delete xp; }代码很简单,在main函数里面先用new构造一个堆对象,...
2013-07-27 01:54:00 191
原创 从汇编看c++中全局对象和全局变量
先来看c++源码:#include <iostream>using namespace std;class X {public: int i;public: X(int ii = 0) : i(ii) { } ~X() {}};X xxx(1);//全局对象int i = 2;//全局变量...
2013-07-24 02:24:00 282
原创 从汇编看c++成员函数指针(三)
前面的从汇编看c++中成员函数指针(一)和从汇编看c++成员函数指针(二)讨论的要么是单一类,要么是普通的多重继承,没有讨论虚拟继承,下面就来看一看,当引入虚拟继承之后,成员函数指针会有什么变化。下面来看c++源码:#include <cstdio>using namespace std;class Top {public: virtua...
2013-07-11 23:47:00 201
原创 从汇编看c++中指向成员变量的指针(二)
在从汇编看c++中指向成员变量的指针(一)中讨论的情形没有虚拟继承,下面来看看,当加入了虚拟继承的时候,指向成员变量的指针有什么变化。下面是c++源码:#include <iostream>#include <cstdio>using namespace std;class Top {public: int _top;}...
2013-07-10 03:07:00 131
原创 从汇编看c++成员函数指针(二)
下面先看一段c++源码:#include <cstdio>using namespace std;class X {public: virtual int get1() { return 1; } virtual int get2() { return 2; }};...
2013-07-06 22:04:00 174
原创 从汇编看c++中成员函数指针(一)
下面先来看c++的源码:#include <cstdio>using namespace std;class X {public: int get1() { return 1; } virtual int get2() { return 2; } virtual in...
2013-07-06 20:01:00 162
原创 从汇编看c++多重继承中this指针的变化
先来看一下下面的c++源码:#include <iostream>using namespace std;class X {public: virtual void print1() { cout << "X::print1 = " << (long)this << endl; ...
2013-07-06 18:03:00 324
Mac OS X and iOS Internals:To the Apple’s Core.pdf
2020-11-17
Ecma-262规范
2020-11-17
AdvanceAppleDebugging_v0.9.1_SourceCode
2020-11-17
Unicode Standrad
2015-09-24
Git书籍两本打包
2015-09-24
elementary functions
2015-09-24
由于axis2的三本英文书籍
2015-09-24
C89以及Rational
2014-11-26
linux只能连接无密码wifi,无法连接有密码wifi
2015-09-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人