c++初识(2)

引用
一个 人可以有不同的名字,可以有不用的外号。(给变量起一个别名,指向一个实体不给它开辟空间)
类型&
int & ra = a ra是a的一个别名
const int a=10;
const int& ra=a;
const int& r1=10
(临时变量不能被改变)
交换:
swap(int&a,int &b) (可做参数)
可把引用当成指针来用
int &add(int&a,int&b) (可做返回值)
但是返回值的生命周期至少>函数的生命周期
传值、引用的比较
值很大的时候,传值的效率很低
引用不会有拷贝的操作
区别:
语法上:引用不开辟空间,和实体指向同一块空间,是实体的别名。
底层实现:引用用指针实现,本质上是指针

宏可以定义常量也可以定义函数
内联函数
类似一个宏函数。
inline:替换,把函数展开
但是如果代码特别长的话,就不会展开,而是调用
内联函数不能把定义和声明分开。(会导致链接过程中符号找不到)
可以用内联函数代替宏, 本质上是函数,可以进行 语法检查
auto
typeid()
auto p = &a;
auto *p=&a;
这两个一样的
auto p=a;
auto &p=a;
这两个不一样
auto可以确定一行的类型,但是一行多个类型必须相同
其实是根据第一个参数的类型确定的
nulptr
c++中只表示空指针,
在c中,NULL不仅可以看做是空指针,还可以看作是0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值