chapter2.变量和基本类型

一 无符合类型
一般情况下不要在同一个表达式中混用无符号和带符号类型,计算时带符号类型会转化为无符号类型。例如

unsigned int a = 5;
if(-1>a) ;      //为真

二 指针与引用
指针“指向”内存中的某个对象,引用“绑定到”内存中的某个对象。
指针本身即为一个对象,引用不是一个对象,且仅允许一次绑定。
指针不必赋初值,引用必须赋初值。
三 const
const对象必须初始化
顶层const,表示一个常量或常量指针;底层const,表示它们所指(或所引用)的对象是常量。
在执行拷贝操作时.顶层操作不收影响,因为拷贝操作不会改变被拷贝对象的值。底层const则不同,拷入或拷出的对象必须具有相同的底层const资格,或者两个对象的数据类型能够进行转化。

const int v = 0;
int *p1 = nullptr;
const int *p2 = &v;
p1 = p2;        //非法,令p1指向p2所指的内容,有可能错误地改变常量的值。

auto 一般会忽略掉顶层const,留下底层const。
四 decltype
declype 使用的如果是一个不加括号的变量,则得到的是该变量的类型;如果加了一层或多层括号,就会被当成表达式,从而推断得到引用类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值