C++
Kehl
这个作者很懒,什么都没留下…
展开
-
虚函数 以及 由此用到的函数指针
不说话,纯膜拜这个分析http://blog.csdn.net/v_JULY_v/article/details/6446364 尤其是在分析到用vptr来记录存储虚函数的vtbl的时候,如何去通过地址来访问一个函数。 class Base { private: virtual void f() { cout << "Base::f" << endl; } }; class Deri原创 2014-03-12 16:26:51 · 780 阅读 · 0 评论 -
显式调用析构函数
今天在复习shallow copy和deep copy的时候,为了重现shallow copy带来的问题,我写了下面一段代码 class Node{ public: int *num; Node(){num = new int[100];for(int i=0;i<100;i++) num[i]=0;} ~Node(){delete[] num;cout<<"destruct"<<en原创 2014-04-02 20:07:16 · 1575 阅读 · 0 评论 -
函数参数进栈以及自增运算在函数调用中的trick
之前看到个题目 int k = 1; printf("%d,%d\n",k,k++);答案显而易见是2 1, 因为函数调用时,参数的进栈顺序是从右向左,所以是先将k++进栈,即此时第二个参数值是1,但是k已经自增为2 于是我就抱着好玩儿的心态试试: int k = 1; printf("%d,%d\n",++k,++k);我预期的结果是3 2 但是结果是3 3 我有点原创 2014-04-03 19:27:38 · 1407 阅读 · 0 评论