C++笔记总结(第二周)

Register

1、Register作用:提高程序的运行效率,省去了cpu到内存中抓取数据的时间。

#include<stdio.h>
int main()
{
	register int num = 5;
	return 0;
}

register:不能修饰全局变量,也不能修饰函数,只能修是局部变量。

volatile :防止编译器将所修饰的变量加载到寄存器中进行优化

volatile int count = 5;
while(count == 5)
{
	cout << "hello world" << endl;
}

引用分类:左值引用(只能绑定左值)和右值引用(只能绑定右值)

左值:可以对该值取地址或修改。
右值:不能对该值取地址或修改。
如:

int &l_num = num; //左值
int &&r_num = 5; //右值

左右值的引用的作用:函数的形参、函数的返回值。
左值:替代指针的操作。
临时对象开销的问你题(对象移动)

const

const:修饰一个变量(全局、局部)、修饰函数返回值
作用:将修饰的变量标记为只读变量。(错误理解:const修饰的变量是常量)
注意:const修饰一个变量必须初始化。

const int num =5;
num = 5;
num++;

此时num输出任为5.
但是:

const int num =5;
int *p = &num;
(*p)++;

num输出为6。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值