引用的本质剖析
来源:互联网 发布:python是面向对象语言 编辑:程序博客网 时间:2024/06/01 09:26
传智扫地僧课程学习笔记。
int const a;//会报错,提示error C2734: “a”: 如果不是外部的,则必须初始化常量对象,
int &b; //会报错,提示error C2530: “c”: 必须初始化引用,
有没有觉得很像,
引用很像一个常量,
int a = 10;
int &b = a;
cout<<&a<<endl;
cout<<&b<<endl;
打印结果是一样的,
a和b都是同一空间的门牌号,
struct test
{
char a[64]; //64
int &b; //4
int &c; //4
};
cout<<sizeof(test)<<endl;
输出值为72,
普通引用占用内存空间,与指针大小一样,
在32位机器下,改为double结果还是如此,
总结就是:常指针,
Type &name;
Type *const name;
间接赋值成立的3个条件,
1,两个变量,一个实参,一个形参,
2,实参取地址给形参,
3,形参间接修改实参,
同时也由此,可以实现接口的封装和设计,
1,2,3都写在一起的情况,有类似字符串拷贝函数,
1,2写在一起,3单独,就是函数调用,
1单独,2,3在一起,就是引用,不过2是C++编译器帮我们实现的,
0 0
- 引用的本质剖析
- C++引用的本质剖析
- 引用的本质图解
- 引用的本质是什么
- c++引用的本质
- 引用的本质
- 引用的本质
- C++引用的本质
- 引用的本质
- 引用的本质是什么?
- 引用的本质是什么?
- 引用的本质
- 引用的本质
- 引用的本质
- 引用的本质
- 数组做形参的本质剖析
- C++中引用的本质
- 引用的意义与本质
- 中文字体的英文名称(宋体 微软雅黑)
- ubuntu编译libid3tag库报错问题解决
- Ubuntu-PycURL库安装
- linux input输入子系统分析《四》:input子系统整体流程全面分析
- 最简单例子图解JVM内存分配和回收
- 引用的本质剖析
- AngularJS——ng-class
- FoxitReader_AX_Pro.ocx在其它电脑上报错异常
- POJ 3020 Antenna Placement(最小边覆盖)
- Android常用的系统广播的使用
- tableview和searchbar组合且不遮住状态栏
- 使用CMake编译用到cuFFT库的CUDA源代码
- 基于约束的SQL攻击
- git本地仓库push