c++代码中“引用”的使用
这些上机实验在Qt5.9上完成的,具体步骤

- 结构体引用
#include <iostream>
#include<stdlib.h>
using namespace std;
struct mycoach
{
string name;
int age;
}; void *addcoachinfo(mycoach * &cpc,string name,int age)
{
cpc=(mycoach*)malloc(sizeof(mycoach));
cpc->name=name;
cpc->age=age;
cout<<"大家好我是"<<cpc->name<<"今年芳龄"<<cpc->age<<endl;
free(cpc);
cpc=NULL;
} int main()
{
mycoach *cpc=NULL;
addcoachinfo(cpc,"陈培昌",);
return ;
}

- 引用分为普通引用和常引用
int main()
{
int a=;
int &aa =a;
aa=;
printf("%d\n",aa);
return ;
}
常引用的目的往往是不希望被修改


引用实际上是内存的别名,由于字面量没有地址,因此第9行的代码有误
正确的做法是第10行
函数中常引用,目的是让实际参数只拥有只读属性
- 对指针的引用
#include <iostream> using namespace std; struct mycoach
{
string name;
int age;
}; int main()
{
mycoach *cpc = (mycoach*)malloc(sizeof(mycoach));
cpc->name="陈培昌";
mycoach * &wr=cpc;
wr->name="魏锐";
cout <<cpc->name<< endl;
return ;
}

- 对比:常量引用
#include <iostream> using namespace std; struct mycoach
{
string name;
int age;
}; void showinfo(const mycoach &cpc)
{
//cpc.name="中国队长";如果去掉注释就报错,常量不可修改
cout<<"hello! I'm"<<cpc.name<<endl;
} int main()
{
mycoach *cpc = (mycoach*)malloc(sizeof(mycoach));
cpc->name="陈培昌";
const mycoach &wr=*cpc;//常量引用只能引用字面量
showinfo(wr);
return ;
}

c++代码中“引用”的使用的更多相关文章
- Windows Store App 全球化:在后台代码中引用字符串资源
上文提到了引用字符串资源具有两种方式,分别是在XAML元素中和在后台代码中引用资源文件中的字符串资源.在第一小节已经介绍了如何在XAML元素中引用字符串资源,本小节将讲解在后台代码中引用字符串资源的相 ...
- 代码中引用res里的颜色、图片
1.imageButton userImgButton 在代码中设置图片,使用res/Drawable 里的图片 Resources res = getResources(); Bitmap inDr ...
- 在java代码中,用xslt处理xml文件
http://blog.csdn.net/zhou_lei/article/details/2661735 ********************************************** ...
- 如何在Swift的代码中使用OC的代码, 在OC的代码中使用Swift的代码?
https://www.cnblogs.com/upliver/p/5138160.html 如何在Swift的代码中使用OC的代码, 在OC的代码中使用Swift的代码? 随着苹果公司对Swift的 ...
- SpriteBuilder代码中弱引用(weak)需要注意的地方
比如在GameScene类中有一个弹出菜单层实例的引用,我们有: @implementation GameScene{ //other ivars __weak GameMenuLayer *_pop ...
- VS中,添加完Web引用(WebServer引用/Web服务引用),写代码时引用不到
VS中,添加完Web引用(WebServer引用/Web服务引用),写代码时引用不到 添加完之后要等一会儿 等一会儿 等一会儿 就有了
- C++中引用编译过的C代码为什么要用“extern c”
函数经过编译系统的翻译成汇编,函数名对应着汇编标号. 因为C编译函数名与得到的汇编代号基本一样,如:fun()=>_fun, main=>_main 但是C++中函数名与得到的汇编代号 ...
- How do I duplicate a resource reference in code behind in WPF?如何在WPF后台代码中中复制引用的资源?
原文 https://stackoverflow.com/questions/28240528/how-do-i-duplicate-a-resource-reference-in-code-behi ...
- arrays.xml中使用integer-array引用drawable图片资源,代码中如何将这些图片资源赋值到ImageView控件中
当我们在arrays.xml文件中声明一些图片资源数组的时候: <?xml version="1.0" encoding="utf-8"?> < ...
随机推荐
- Jmeter做HTTP接口测试
接口测试概述:https://www.cnblogs.com/mawenqiangios/p/7886115.html Jmeter接口测试教程:https://www.cnblogs.com/hou ...
- Sql server 中count(1) 与 sum(1) 那个更快?
上一篇中,简单的说明了下 count() 与 sum() 的区别,虽然count 函数是汇总行数的,不过我汇总行数的时候经常是使用SUM(1) ,那么问题来了,count(1) 与 sum(1) 那 ...
- 从MongoDB及mysql 谈B/B+树
一 B树的由来 B树指的是一类树,包括B-树,B+树,B*树等,是一种自平衡的搜索树,它类似普通的平衡二叉树,不同的一点是B树允许每个节点有更多的子节点.B树是专门为外部存储器设计的,如磁盘,它对于读 ...
- selenium cookie 登录
前言 爬虫方向的小伙伴们都知道网页爬虫经常遇到的问题就是登录账户,有些简单的网站我们可以简单的send key来输入账户密码就可以登录,但是有很多网站需要验证码之类的就不太好用了,这时候就体现到了co ...
- Scratch:海龟绘图(九)
在本课的前导部分,我们说到怎么做才能成为一个负责任的“程序猿”.我认为,负责任的程序员决不会草率的处理任何“函数接口”. 比如这个“画圆”函数,程序员就会认真推敲“哪些参数是必要的.哪些参数又是多余的 ...
- Abandoning Roads CodeForces - 1149D (最小生成树)
大意: 给定无向图, 边权只有两种, 对于每个点$x$, 输出所有最小生成树中, 点$1$到$x$的最短距离. 先将边权为$a$的边合并, 考虑添加边权为$b$的边. 每条路径只能经过每个连通块一次, ...
- sping+redis实现消息队列的乱码问题
使用spring支持redis实现消息队列,参考官方样例:https://spring.io/guides/gs/messaging-redis/ 实现后在运行过程中发现消费者在接收消息时会出现乱码的 ...
- Python中的内存管理机制
Python是如何进行内存管理的 python引用了一个内存池(memory pool)机制,即pymalloc机制,用于管理对小块内存的申请和释放 1.介绍 python和其他高级语言一样,会进行自 ...
- css 关于"浮动边距加倍"及其解决方法-------解决方案是在这个div里面加上display:inline;
写div代码的时候,经常发现明明宽度算得很准确,但是莫明其妙的会和计划的布局不太一样- -|||开始以为自己代码写的有问题,拼命找bug也一无所获,最后可能会稍微修改样式来达到想要的效果,但终究也是外 ...
- 六、TreeMap的使用 及其源码解析
TreeMap中的元素默认按照keys的自然排序排列 1. 构造函数TreeMap(): 创建一个空的TreeMap ,keys按照自然排序TreeMap(Comparator comparator) ...