反汇编
Gaodes
成功来自点滴的坚持
展开
-
反汇编之C++的指针与引用
示例 #include<iostream> using namespace std; int main() { int temp = 100; int *point = &temp; int &t = temp; getch(); } 反汇编的结果 int temp = 10; 012718E8 mov dword ...转载 2018-08-15 11:59:38 · 287 阅读 · 0 评论 -
反汇编之C++的内联
C/C++提供了内联函数机制 内联函数就是向编译器建议:编译这个函数的时候.直接把函数展开,而不是进行函数调用call.当然编译器并不接受这个建议.仍然把他当做普通函数进行编译 使用内联函数的优点:减少函数调用的操作.也就是免去了保存堆栈现场,返回地址,参数进栈.分配栈空间,跳转.回收栈空间.恢复堆栈现场,虽然使用宏函数可以实现其效果.但是宏函数不能在编译阶段提供类型检查,为bug留下隐...转载 2018-08-15 12:04:15 · 357 阅读 · 0 评论 -
反汇编之C++的虚函数
先来查看一简单例子 #include<iostream> using namespace std; class Base{ public: virtual void f() { cout << "base f()被call"<<endl; } virtual void g() { cout << "父类虚函数G被call" &转载 2018-08-15 12:08:05 · 224 阅读 · 0 评论 -
反汇编之C++的new
首先来看最简单的new操作 int main() { int *temp = new int; delete temp; } 反汇编结果:调用了operator new 00311C9E push 4 00311CA0 call operator new (0311438h) 00311CA5 add esp,4 进入operator new中查看 void* __CRTD...转载 2018-08-15 12:09:04 · 666 阅读 · 0 评论 -
反汇编之C++的const
#include<iostream> #include<stdlib.h> using namespace std; const int &add( const int &a,const int &b) { return a+b; } int main() { const int &result = ...转载 2018-08-15 12:06:15 · 277 阅读 · 0 评论