C++反汇编第二讲,不同作用域下的构造和析构的识别
目录大纲:
1.全局(静态)对象的识别,(全局静态全局一样的,都是编译期间检查,所以当做全局对象看即可.)
...,以及全局变量等等.这些初始化,都是在ininterm中初始化的,和全局变量初始化的位置一样,如果不太懂,请看.以前博客链接:
建立高级代码,查看其调用栈....PS: 注意,局部对象和传参的区别,局部对象会在函数内部进行调用构造,而传参的时候是在函数外面进行的初始化动作
三丶返回值为对象的识别
当返回值为对象的时候,会有两种情况
1.定义的时候产生拷贝动作...1.调用的时候,当做参数传递给Getobj
3.函数结束之后调用析构
2.函数内部调用构造和析构
(其中2在Getobj里面,看Release版本)
Release下的汇编
?...加上类域则可以调用构造了,那么析构我们是显示调用,所以看看汇编代码,会传入0,不会释放内存的.
?