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

代做网站跳转智能化建设网站

代做网站跳转,智能化建设网站,网站建立好如何做seo,wordpress换不了密码错误C中返回类型与return语句 有、无返回值的函数及其return语句 无返回值#xff08;函数声明中#xff0c;返回值类型为void#xff09;的函数#xff0c;如果其中没有任何return语句也是正确的#xff0c;编译器会自动在函数结束处补上隐式的return;语句。如果这种void函数…C中返回类型与return语句 有、无返回值的函数及其return语句 无返回值函数声明中返回值类型为void的函数如果其中没有任何return语句也是正确的编译器会自动在函数结束处补上隐式的return;语句。如果这种void函数内部出现显式的return;其作用是表示该函数在此处将控制权交还给主调函数。 除void函数外其他函数必须显式地返回与声明中返回值类型相同或可以转换为该类型的值。 函数把值返回给调用处的细节原理 函数把值返回给外部调用处的实现方法细节与从外部实参传递值给函数形参的方法细节完全一样。本质上是用已有值传参中的实参返回中的返回值初始化一个临时量传参中的形参返回中的函数调用点。因此对象的初始化规则在函数返回过程中仍然适用。 1 函数返回局部变量给外部 本质上是将函数内局部变量的值拷贝给函数调用点用来初始化外部调用点的临时对象。 2 函数返回引用给外部 引用是对象的别名因此此时函数对外返回的是对象本身而不是拷贝一个值给外部副本。因此要特别注意千万不能返回函数内部局部对象的引用和指针。因为函数在结束调用后局部变量就会被销毁这时被函数给返回到外部的局部变量对象引用将不再绑定有效的内存区域。 综上可知函数要想对外返回引用或指针只能返回那种在函数调用之前已经存在了的对象的引用或指向该对象的指针 范例 //函数对外返回引用的正确用法 const string shorterStr(const string s1, const string s2) { //挑出两个string对象中较短的那个返回其引用return s1.size() s2.size() ? s1 : s2; //因为s1和s2绑定的对象都是在调用函数前就已经存在的了因此函数对外返回这种对象的引用不会产生问题 }//以下写法严重错误这个函数试图返回局部对象的引用 const string manip() {string ret;if (!ret.empty()) {return ret; //❌试图返回局部对象的引用} else {return Empty; //❌Empty也是一个局部临时量并且以引用的方式传出在函数结束调用后该临时量会被销毁使得外部调用点的引用不再绑定具体对象} }//以下写法严重错误不能返回一个指向局部对象的指针 int *funcIp(int var) {int i 10;int *ip (i var); //i var对象是一个临时量结束调用后销毁对外返回的指针无法指向确定的内存return ip; }返回类类型的函数可以连续调用 返回类类型类的对象或其引用或指向类的对象的指针的函数可以在其调用处继续使用调用运算符去调用该类的其他函数如下例 const string shorterStr(const string s1, const string s2) { //此函数返回的是一个string对象的引用return s1.size() s2.size() ? s1 : s2; } string s1 aaaa; string s2 bbb; auto sz shorterStr(s1, s2).size(); //shoterStr(s1, s2)返回的是一个string对象s2该对象有size()成员函数因此可以在shoterStr()的返回处再继续调用size()这个调用结束后返回的是一个size_t类型值对象由auto类型对象sz接收引用返回左值 调用一个返回引用的函数在调用处得到左值左值可以放在赋值号左边用来被赋值 调用返回其他类型的函数在调用处得到右值右值可以放在赋值号右边用来赋值 可以像使用其他左值那样来使用返回左值返回引用的函数调用特别是能为返回类型是非常量引用的函数结果进行赋值。如下例 但如果函数的返回值类型是常量引用就不能给调用结果进行赋值了这是常量特性所决定的 char get_val(string str, string::size_type ix) { //该函数的返回值类型是非常量引用其返回结果可以在调用处被当作左值return str[ix]; //假定索引值ix一定合法 }const string shorterStr(const string s1, const string s2) { //此函数返回的是常量引用return s1.size() s2.size() ? s1 : s2; }int main() {string s(a value);cout s endl; //输出a valueget_val(s, 0) A; //get_val的返回结果在此处被当作左值因为它的返回值类型是非常量引用可以完成这里的赋值操作将s[0]的值改为Acout s endl; //输出A valueshoterStr(hi, bye) X; //❌返回的是常量引用也就是常量对象不能被修改因此也不能这样作为左值使用return 0; }该文章会更新欢迎大家批评指正。 推荐一个零声学院的C服务器开发课程个人觉得老师讲得不错 分享给大家LinuxNginxZeroMQMySQLRedis fastdfsMongoDBZK流媒体CDNP2PK8SDocker TCP/IP协程DPDK等技术内容 点击立即学习C/C后台高级服务器课程
http://www.zqtcl.cn/news/640439/

相关文章:

  • 濮阳公司建站淮北城市住建网
  • 建设银行网站打不开 显示停止工作专门做地图的网站
  • 有没有人一起做网站app网站建设方案
  • 洛阳网站建设兼职企业网站建设文案
  • 动漫制作贵州seo策略
  • asp网站建设项目实训该怎么跟程序员谈做网站
  • 网站软件资源iis不能新建网站
  • 网站设计的发展趋势西安市建设工程交易网
  • 做外贸收费的服装网站武钢建设公司网站
  • wordpress 全文搜索企业网站优化策略
  • 犀牛云做网站如何网站备案需要什么东西
  • wordpress星座网站建设与优化计入什么科莫
  • 外贸网站优化方案绵阳网站建设怎么做
  • 黑龙江省网站建设电商的运营推广
  • 惠州建站模板wordpress更换主题帖子封面不显示
  • 网站开发为什么不用cgi了营销型网站案例
  • 网站怎么做飘窗电子商城网站建设的实训内容
  • 怎样申请建网站做it公司网站
  • 一个网站费用给人做ppt的网站吗
  • 免费简历在线制作网站杭州市网站建设公司
  • 用家庭宽带做网站 没有8080端口可以吗汕头教育学会网站建设
  • 南通seo公司网站广东涂料网站建设
  • 杭州哪家公司可以做网站苏州公司官网制作
  • 建一个网站大约多少钱做社区网站怎么做
  • 安阳建设网站企业单位网站建设内容需要什么
  • 网站如何被谷歌收录wordpress搭建企业官网
  • 网站 服务报价网站建设需要具备
  • 鹿泉企业网站建设wordpress使用支付宝当面付
  • 手机网站重要性彩票网站上的走势图是怎么做的
  • 牛牛襄阳网站建设做电商网站需要会些什么问题