博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习笔记(引用,动态分配等等)
阅读量:4094 次
发布时间:2019-05-25

本文共 835 字,大约阅读时间需要 2 分钟。

& 在C++中表示引用,用来表示存储器的别名。

int x =7;int& y=x;//定义了一个指向x的引用
上面分配了一个int单元,它有两个名字x ,y。

还需要注意的是指针的引用

int a = 1;int b = 2;  int *tmp = &a;int *p = tmp;// 第二种情况:int *&p = tmp;(此既是指向指针的引用)p = &b;*p = 5;
结果一:a=1,b=5,*tmp=1;*p=5;

结果二:a=1,b=5,*tmp=5,*p=5;

动态分配

class Person{  public:  void eat();  private:  int m_iAge;  string m_strName; }
int main(void)
{
Person one = new Person();//动态分配存储空间
delete one;//释放分配的存储空间,new 和delete 同时结对出现。
Person two; //当不需要时,系统自动释放存储空间
 
}
引用调用

当一个函数的参数为引用参数,则会出现引用调用。在以往的程序中我们都是直接传递参数,实际上函数里的虚参为实参的一个拷贝,在函数中对虚参进行计算是无法改变实际参数的,若使用引用调用,则是将实际参数传递给函数进行运算,在函数中改变参数的值,主程序中的值也会改变。

#include
using namespace std;void swap(int a,int b);//第二种情况:void swap(int& a,int & b);int main(void){ int x = 4; int y = 11; cout<<"x="<
<<", y="<
<
第一种情况:

a=4,b=11

a=4,b=11

第二种情况:

a=4,b=11

a=11,b=4

转载地址:http://sktii.baihongyu.com/

你可能感兴趣的文章
Objective-C 基础入门(一)
查看>>
找工作准备的方向(4月22日写的)
查看>>
关于fwrite写入文件后打开查看是乱码的问题
查看>>
用结构体指针前必须要用malloc,不然会出现段错误
查看>>
Linux系统中的美
查看>>
一些实战项目(linux应用层编程,多线程编程,网络编程)
查看>>
STM32CubeMX 真的不要太好用
查看>>
不要买铝合金机架的无人机,不耐摔,易变形弯曲。
查看>>
ACfly也是基于FreeRTOS的
查看>>
我发现七月在线的GAAS课程基本都讲到了
查看>>
电机堵转
查看>>
carzepony也在想往FreeRTOS上迁移
查看>>
思岚A1的SDK其实很好读懂,每个函数清晰明了,可以直接调用
查看>>
去github里面找找也没有别人无人机+SLAM的工程
查看>>
现在明白为什么无名博客里好几篇文章在讲传感器的滞后
查看>>
ROS是不是可以理解成一个虚拟机,就是操作系统之上的操作系统
查看>>
用STL algorithm轻松解决几道算法面试题
查看>>
ACfly之所以不怕炸机因为它觉得某个传感器数据不安全就立马不用了
查看>>
我发觉,不管是弄ROS OPENCV T265二次开发 SDK开发 caffe PX4 都是用的C++
查看>>
ROS的安装(包含文字和视频教程,我的ROS安装教程以这篇为准)
查看>>