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"?> < ...
随机推荐
- google搜索设置,在新的窗口打开
- K8S从入门到放弃系列-(6)kubernetes集群之kube-controller-manager部署
摘要: 1.Kubernetes控制器管理器是一个守护进程它通过apiserver监视集群的共享状态,并进行更改以尝试将当前状态移向所需状态. 2.kube-controller-manager是有状 ...
- sql query skill
https://www.w3resource.com/sqlite/sqlite-select-query-statement.php /* SELECT ChipID FROM "tb_X ...
- Office常用快捷键大全,包含 Word、Excel、PowerPoint
功能 快捷键 查找文字.格式和特殊项 Ctrl+G 使字符变为粗体 Ctrl+B 为字符添加下划线 Ctrl+U 删除段落格式 Ctrl+Q 复制所选文本或对象 Ctrl+C 剪切所选文本或对象 Ct ...
- Counting Cliques(HDU-5952)【DFS】
题目链接:https://vjudge.net/problem/HDU-5952 题意:有一张无向图,求结点数量为S的团的数量. 思路:如果不加一点处理直接用DFS必然会超时,因为在搜索过程中会出现遍 ...
- python学习-28 map函数
1. num_1 = [10,2,3,4] def map_test(array): ret = [] for i in num_1: ret.append(i**2) # 列表里每个元素都平方 re ...
- 基于搜索的贝叶斯网络结构学习算法-K2
基于搜索的贝叶斯网络结构学习算法-K2 2018-04-05 19:34:18 ItsBlue 阅读数 3172更多 分类专栏: 贝叶斯网络 网络结构学习 版权声明:本文为博主原创文章,遵循CC ...
- Git 常用命令 MD
| Markdown版本笔记 | 我的GitHub首页 | 我的博客 | 我的微信 | 我的邮箱 || :------------: | :------------: | :------------: ...
- Map 集合遍历的4种方法
Map 集合初始化时,指定集合初始值大小. 说明:HashMap 使用 HashMap(int initialCapacity) 初始化. 正例:initialCapacity = (需要存储的元素个 ...
- C#获取ip
string name = Dns.GetHostName(); string ip = Dns.GetHostAddresses(name).First().ToString();