当前位置: 首页 > news >正文

学校网站建设工作会议深入解析wordpress 下载

学校网站建设工作会议,深入解析wordpress 下载,网站推广策略有哪些,wordpress 维护模式前言提到重载这个词#xff0c;我们会想到什么呢#xff1f;重载有一种一词多义的意思#xff0c;中华文化博大精深#xff0c;之前有一个笑话#xff0c;中国的乒乓球谁都打不过#xff0c;男足谁都打不过#xff0c;哈哈哈这也是非常有意思的#xff0c;但是今天我们…前言提到重载这个词我们会想到什么呢重载有一种一词多义的意思中华文化博大精深之前有一个笑话中国的乒乓球谁都打不过男足谁都打不过哈哈哈这也是非常有意思的但是今天我们要研究的是函数重载看看重载和函数在一起会碰撞出什么火花呢 函数重载概念函数重载是函数的一种特殊情况C允许在同一作用域中声明几个功能类似的同名函数这些同名函数的形参列表(参数个数 或 类型 或 类型顺序)不同常用来处理实现功能类似数据类型不同的问题。这里要注意构成函数重载的条件只有三个参数个数不同 参数类型不同 参数类型数据不同如果函数的返回值类型不同是不构成函数重载的。下边代码中的三种方式都构成函数重载我们也可以来证实一下。#includeiostream using namespace std; // 1、参数类型不同 int Add(int left, int right) {cout int Add(int left, int right) endl;return left right; } double Add(double left, double right) {cout double Add(double left, double right) endl;return left right; }// 2、参数个数不同 void f() {cout f() endl; } void f(int a) {cout f(int a) endl; }// 3、参数类型顺序不同 void f(int a, char b) {cout f(int a,char b) endl; } void f(char b, int a) {cout f(char b, int a) endl; } int main() {Add(10, 20);Add(10.1, 20.2);f();f(10);f(10, a);f(a, 10);return 0; }C支持函数重载的原理我们知道了C可以支持函数重载那么他的原理到底是什么呢为什么C语言不支持呢这里就必须要提到了名字修饰这个概念了。之前的文章中有提到C/C中的程序要运行起来必须有编译链接两个阶段但是编译又分为预处理编译汇编。预处理阶段主要完成头文件展开宏定义替换注释的删除几个过程形成test.i文件。编译阶段主要完成语法分析词法分析语义分析符号汇总转换为汇编指令形成test.s文件。汇编阶段主要形成符号表将汇编语言转换为二进制语言形成test.o文件。链接阶段将形成的.o文件链接起来形成段表以及符号表的合并重定位。我们发现在汇编阶段为形成符号表C语言中的符号表的名称直接就是函数名这才导致如果一个文件中有重载函数会造成冲突和二义性这肯定是不行的但是为什么C可以函数重载呢由于Windows环境下不好观察我们使用Linux环境来观察一下使用以下指令#includeiostream using namespace std; int Add(int left, int right) {cout int Add(int left, int right) endl;return left right; } double Add(double left, double right) {cout double Add(double left, double right) endl;return left right; } int main() {Add(10, 20);Add(10.1, 20.2); } 我们发现函数名虽然相同但是修饰后的名称并不相同这也就是C重载函数可以使用的原因在构成符号表的时候他们都是不同的名称我们再来看几个样例。#includeiostream using namespace std; // 3、参数类型顺序不同 void f(int a, char b) {cout f(int a,char b) endl; } void f(char b, int a) {cout f(char b, int a) endl; } int main() {Add(10,a);Add(a,10); } 我们也能看出函数名修饰是跟参数有关系我们也能大概总结出gcc编译器的命名规则。g的函数修饰后变成【_Z函数长度函数名类型首字母】总之构成函数重载的三要素就是参数个数不同参数类型不同参数类型顺序不同这样才会在构成符号表的时候名称不同只有这样在链接的时候才不会产生二义性。
http://www.dnsts.com.cn/news/14263.html

相关文章:

  • 网站发布文章怎么才能让百度收录wordpress网站mip改造
  • 苏州国内网站建设公司室内设计效果图手绘图片大全
  • 宝安福永小学网站建设寄生虫seo教程
  • 用vs做网站原型国际军事新闻头条
  • 建设银行征信中心个人信用查询官方网站美丽寮步网站建设
  • 免费不收费用网站南平 建网站
  • 旅游示范校建设专题网站网站换肤功能 js
  • 学校网站源码免费做网站软件j
  • 餐饮网站 设计wordpress积分插件
  • 无锡网站建设策划方案网页设计图片居中对齐的代码
  • 网站建设优势磁力搜索
  • 智林东莞网站建设公司西安官网排名推广
  • 网站建设设计规范方案新乡商城网站建设哪家优惠
  • 如何进入网站后台管理网站电子商务网站建设与管理a卷答案
  • 网站建设公司诺玺网络广州海珠网站开发价格
  • 网站备案是备什么塑胶网站建设
  • 网页视觉设计是什么seo推广教程视频
  • 建设银行个人网站win10优化大师有用吗
  • 企业门户网站建设思路网站如何优化关键词排名
  • 学校免费网站建设网站标题设计ps
  • 做网站用sql和mysqlasp网站怎么做
  • 网站如何备案icp深圳小蚁人网站建设
  • 网站开发和网站维护有区别吗菜鸟怎么做网站
  • 重庆有哪些好玩的地方网站优化师负责干什么
  • 佛山市企业网站seo点击软件青羊区企业网站建设策划
  • 网站开发实习生有没有在网上做ps赚钱的网站
  • 网站开发历史广州网站设计成功柚米科技
  • 做网站的服务商网站不同颜色
  • 云南建设厅官方网站服务器做视频网站吗
  • 沈阳网站建设 成创建网站的几个公司