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

服装网站制作北京网站营销与推广

服装网站制作,北京网站营销与推广,论文代做网站,dede网站怎么做微信小程序文章目录 一、函数返回值不能是 " 局部变量 " 的引用或指针1、函数返回值常用用法2、分析函数 " 普通返回值 " 做左值的情况3、分析函数 " 引用返回值 " 做左值的情况 函数返回值 能作为 左值 , 是很重要的概念 , 这是实现 " 链式编程 &quo…

文章目录

  • 一、函数返回值不能是 " 局部变量 " 的引用或指针
    • 1、函数返回值常用用法
    • 2、分析函数 " 普通返回值 " 做左值的情况
    • 3、分析函数 " 引用返回值 " 做左值的情况


函数返回值 能作为 左值 , 是很重要的概念 , 这是实现 " 链式编程 " 的基础 ;





一、函数返回值不能是 " 局部变量 " 的引用或指针




1、函数返回值常用用法


在 C++ 语言中 , 函数返回值 一般不会直接作为左值 , 因为 函数返回值是一个临时对象 , 一般情况下 都是当做右值使用 , 函数 返回的值都是 其 函数内部 局部变量 的 副本 , 这些 副本 不能作为左值参与赋值操作 ;

如果 是 外部通过 函数参数 传入到函数中的 指针 / 引用 , 没有必要返回 , 外部已经有了 , 你再返回一次意义不大 ;


2、分析函数 " 普通返回值 " 做左值的情况


函数普通返回值 不能做左值 ;


如果函数返回值是一个普通类型 , 那么返回的是 指定变量 的副本值 ;

下面的 fun 函数中 , 返回的是 静态变量 a 的值 ,

注意 : 这里返回的只是 a 的值 , 与静态变量无关 ;

是将 静态变量 a 复制一份 , 将复制后的 副本 10 这个数值返回了 ;

// 返回静态变量的值
int fun()
{static int a = 10;return a;
}

下面 的代码中 , 强行给 函数 返回的 普通变量 的 副本值 进行复制 , 报

error C2106:=: 左操作数必须为左值

错误信息 ;


错误代码示例 :

// 导入标准 io 流头文件
// 其中定义了 std 命名空间
#include <iostream>
// 导入 std 命名空间
using namespace std;#include <stdio.h>// 返回静态变量的值
int fun()
{static int a = 10;return a;
}// 返回静态变量引用 , 也就是静态变量自身
int& fun2()
{static int a = 20;return a;
}int main() {fun() = 100;return 0;
}

编译运行报错信息 :

1>------ 已启动生成: 项目: HelloWorld, 配置: Debug Win32 ------
1>Hello.cpp
1>Y:\002_WorkSpace\002_VS\HelloWorld\HelloWorld\Hello.cpp(25,16): error C2106:=: 左操作数必须为左值
1>已完成生成项目“HelloWorld.vcxproj”的操作 - 失败。
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0==========

在这里插入图片描述


3、分析函数 " 引用返回值 " 做左值的情况


函数引用返回值 可以做左值 ;


下面的 fun2 函数 , 返回 局部变量 中 创建的 静态变量 a 的引用 ,

相当于 将 静态变量 的 内存地址返回回去了 ,

该 静态变量的 内存地址 直到程序结束之前 都是有效的 , 因此该引用返回值 可以正常使用 ;

该 函数返回值 可以作为 正常的变量使用 , 既可以作为左值使用 , 又可以作为右值使用 ;

// 返回静态变量引用 , 也就是静态变量自身
int& fun2()
{static int a = 20;return a;
}

在下面的代码中 , 先获取 fun2 函数的 引用返回值 , 将其打印出来 , 值为 10 ;

然后 再次调用 fun2 函数 , 直接将其作为左值 , 为其 赋值 100 , 然后打印 之前获取的 引用值 , 值也变为 100 ;

函数的引用返回值 可以作为 左值使用 ;


函数返回值 做 左值 代码示例 :

// 导入标准 io 流头文件
// 其中定义了 std 命名空间
#include <iostream>
// 导入 std 命名空间
using namespace std;#include <stdio.h>// 返回静态变量的值
int fun()
{static int a = 10;return a;
}// 返回静态变量引用 , 也就是静态变量自身
int& fun2()
{static int a = 20;return a;
}int main() {// 先获取 fun2 函数返回的引用int& a = fun2();// 打印 引用 初始值printf("a = %d\n", a);// 引用类型返回值 fun2() = 100;// 打印修改后的效果printf("a = %d\n", a);return 0;
}

执行结果 :

a = 20
a = 100Y:\002_WorkSpace\002_VS\HelloWorld\HelloWorld\Debug\HelloWorld.exe (进程 17252)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .

在这里插入图片描述

http://www.hkea.cn/news/696003/

相关文章:

  • 惠州做网站好的公司下载百度语音导航地图安装
  • 春节网站怎么做小说排行榜百度搜索风云榜
  • 商城服务是什么软件seo是指什么岗位
  • 无锡网站建设有限公司网站快速收录的方法
  • 网站建设通报推广网站多少钱
  • 网络推广公司成都seo排名优化教程
  • 一台手机登录微信网页版西安优化外
  • 如何做旅游攻略网站长沙seo优化推荐
  • 长春火车站电话咨询电话快排seo
  • 龙城建设网站公司网站内容优化方法
  • 南通网站建设搭建网站卖链接
  • 驻马店市做网站seo臻系统
  • 找公司做网站怎么图片都要自己找百度推广官网电话
  • 网站小样用什么做seo外链平台热狗
  • 建站点的步骤sem是什么
  • 深圳专业做网站的衡水网站优化推广
  • 徐汇科技网站建设2345中国最好的网址站
  • 邢台论坛吧百度seo收录软件
  • 做国外服务器网站吗怎么让百度搜索靠前
  • 做动态图网站有哪些自建站怎么推广
  • web网站开发课程设计报告seo技术培训沈阳
  • 会宁网站建设公司网站优化助手
  • 网站设计制作体会2023年5月最新疫情
  • 月亮湾设计有限公司网站南宁seo产品优化服务
  • 福田欧曼服务站电话上海高端seo公司
  • 高端网站建设哪家好谷歌seo和百度seo
  • 前端写一个页面多少钱海口网站关键词优化
  • 浦东新区建设局官方网站东莞seo关键词
  • 在百度做橱柜网站进入百度一下官网
  • wordpress调用分类标签站长工具查询seo