• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

小程序大道理(一)引用的用途

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

一些小的程序,往往蕴含着许多重要的知识点,这篇文章,我们利用一个小程序,讲解引用的妙用。
#include<iostream>
#include<string>
using namespace std;
int main(){
string str="Gdkknvnqkc";
for(auto &s:str)
s=s+1;
for(auto s:str)
cout<<s;
cout<<endl;
for(auto s:str)
s=s-1;
for(auto s:str)
cout<<s;
cout<<endl;
return 0;
}
运行上述程序:
Helloworld
Helloworld
从运行结果,我们可以看到第一个for循环对字符串 str 中的字符产生了影响,但第三个for循环没有对字符串 str 中的元素产生影响。
这是因为第一个for循环是以引用遍历字符串中的字符,每一次循环 s 都会被定义为字符串 str 中字符的引用,此时对 s 的操作就是对该字符的操作。因此第一个for循环使原来的字符串变为Helloworld。
第二个for循环只是将字符串中字符赋值给对象 s ;所以原字符串不会发生改变依旧是Helloworld。
那么思考一个问题:
编写一个函数swap,在主函数中定义两个int型变量,并初始化(两个变量初始化赋值不同),调用swap函数实现两个变量值得交换。
这里我们推荐两种方法:一种是我们刚刚讲述的引用,将函数定义为swap(int &x,int &y){...},另一种就是利用指针,将函数定义为swap(int *x,int *y){...};大家不妨把程序补充完整,并与函数swap(int x,int y){...}对比。看三个函数定义形式的不同。
转载自https://mp.weixin.qq.com/s/Av7b7DyzWQOZI4u_jMrQeQ
<a href="https://mp.weixin.qq.com/s/Av7b7DyzWQOZI4u_jMrQeQ
"target="_blank">小程序大道理


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
微信小程序配置业务域名校验文件发布时间:2022-07-18
下一篇:
党建答题小程序复盘回顾终结篇发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap