1. 本质

采用了name mangling或者叫name decoration

✓ C++编译器默认会对符号名(比如函数名)进行改编、修饰,有些地方翻译为“命名倾轧”
✓ 重载时会生成多个不同的函数名,不同编译器(MSVC、g++)有不同的生成规则
✓ 通过IDA打开【VS_Release_禁止优化】可以看到

2.F9 是打开断点

3.证明c++ 可以根据函数的(参数不同)  而去改函数的名字

:反汇编

光标到第一个调用函数的地方:F9   之后不是ctr+F5     是直接F5就行了   之后右击就会出现 反汇编

4.

5.

c++与c语言是一样的,printf  里面用双引号

6.

vs 2019 不在显示机器码,我圈的也不是机器码

7.

二进制转十进制4位一补,不过还是从右到左2的·0 1 2 3次方?????????总结的不对

https://jingyan.baidu.com/article/597a0643614568312b5243c0.html  (二转10)

https://jingyan.baidu.com/article/39810a23e3779db636fda6c5.html

与其说像他说的8位一补,不如说 二转10 就是不用补,直接不用划分成几块,,直接从右到左2的0123456次方 有多少直接次方递增就行

还不是二转8  不是8的0123456次方,而还是2的0123456只不过8进制是3位一补 ,,,2的012 没有了不能在递增其次方了

8.2个16进制位 等于8个二进制的个数  所以  2个16进制位 代表1个字节

9.

10.

11.

12.

用这个证明???????

c++ 的学习 第二集函数的重载2 namemangling的更多相关文章

  1. c++ 的学习 第二集函数的重载

    1. 规则 函数名相同参数个数不同.参数类型不同.参数顺序不同 2. 注意 返回值类型与函数重载无关 调用函数时,实参的隐式类型转换可能会产生二义性 返回值类型与函数重载无关 什么意思? 返回 ...

  2. c++ 的学习 第二集函数的重载之3 -利用IDA分析bebug里面

    1. 对项目右击,在文件资源管理器中打开文件夹 2.看debug里面的.exe     这个文件 函数的真实的名字 打开.exe文件就是还是显示,,, 3.debug模式有太多的断点信息还有许多不精简 ...

  3. 前端学习 第二弹: JavaScript中的一些函数与对象(1)

    前端学习 第二弹: JavaScript中的一些函数与对象(1) 1.apply与call函数 每个函数都包含两个非继承而来的方法:apply()和call(). 他们的用途相同,都是在特定的作用域中 ...

  4. 二、Android学习第二天——初识Activity(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 一. Android学习第二天——初识Activity 昨天程序搭建成功以 ...

  5. python学习第二讲,pythonIDE介绍以及配置使用

    目录 python学习第二讲,pythonIDE介绍以及配置使用 一丶集成开发环境IDE简介,以及配置 1.简介 2.PyCharm 介绍 3.pycharm 的安装 二丶IDE 开发Python,以 ...

  6. python学习第二次笔记

    python学习第二次记录 1.格式化输出 name = input('请输入姓名') age = input('请输入年龄') height = input('请输入身高') msg = " ...

  7. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第二周测验【中英】

    [中英][吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第二周测验 第2周测验 - 神经网络基础 神经元节点计算什么? [ ]神经元节点先计算激活函数,再计算线性函数(z = Wx + ...

  8. Learning ROS for Robotics Programming - Second Edition(《ROS机器人编程学习-第二版》)

    Learning ROS for Robotics Programming - Second Edition <ROS机器人编程学习-第二版> ----Your one-stop guid ...

  9. 201671010140. 2016-2017-2 《Java程序设计》java学习第二周

                                 学习第二周(Java基本程序设计结构)      这一周,着重学习了Java的简单程序设计实现及运行,通过自己操作,发现Java的程序语法大面 ...

随机推荐

  1. 题解 big

    传送门 题面里那个式子 考场上我推了半天那个式子代表什么意思,但就是没想到位运算 \(\lfloor \frac{2x}{2x^n} \rfloor \iff x\gg(n-1)\), 即将x的第n位 ...

  2. pycharm使用Djiago创建第一个web项目

    安装PyCharm专业版(注意社区版创建Djiago需要配置,比较麻烦) 创建Djiago项目点上 1.Inherit glocal site-packages(不然pycharm不去下载Djiago ...

  3. wpf 实现印章,公章效果

    能写一些特定外观的控件,是一个做界面开发的程序员的基础技能.基本上,不管你是做web,QT,MFC,Winform,WPF等等,如果自己看到一个比较好看的有趣的效果,能大致推断出它的实现方式并照猫画虎 ...

  4. c# 对 struct为什么不能继承类和结构的思考

    1.类.结构在使用的时候可以不调用构造函数,如果能够继承类,这种情况下不能够初始化基类,因为不执行构造函数 2.结构.所有的结构类型都默认是 sealed,通过 反汇编可以看到  ,这就阻止了结构被继 ...

  5. Html 之自动高度 auto 和 100%高度

    HTML 高度 下面示例 设置为 Auto 和 100% <!DOCTYPE html> <html lang="en"> <head> < ...

  6. linux &和&&,|和||

    &和&&,|和||区别: &  表示任务在后台执行,如要在后台运行redis-server,则有  redis-server & && 表示前一 ...

  7. Jmeter教程 录制脚本

    Jmeter 录制脚本 Jmeter中有2种方法可以录制脚本.  不过我个人非常不推荐录制脚本,录制的脚本混乱,需要再次加工才能使用. 像我这么精通HTTP协议的人. 一直都是使用Fiddler来抓包 ...

  8. Go版本依赖--版本选择机制

    目录 1. 版本选择机制 2.依赖包版本约定 2.1 Go module 之前版本兼容性 2.2 Go module 之后版本兼容性 3. 版本选择机制 3.1 最新版本选择 3.2 最小版本选择 1 ...

  9. MySQL授权认证

    • MySQL-权限系统介绍 • 权限系统的作用是授予来自某个主机的某个用户可以查询.插入.修改.删除等数据库操作的权限 • 不能明确的指定拒绝某个用户的连接 • 权限控制(授权与回收)的执行语句包括 ...

  10. 整理之Activity

    基础 生命周期 执行层次 进 退 创建与销毁 onCreate() onDestroy() 是否可见 onStart() onStop() 是否在前台(可交互) onResume() onPause( ...