每日一记————const用法笔记

1、const 简单修饰为拥有固定值的常量,其值不可改变,且必须在定义的时候初始化。用const修饰的全局变量其在工程中是唯一,因此当其声明在被多个cpp包含的头文件中是可以的,不会出现链接是符号重复声明的错误。

2、const修饰指针,决定修饰指针还是修饰指针返回值看const在*前面还是后面

char* const p    const用来修饰的是指针p,表示指针是const的,必须初始化指针,并且无法改变指针的指向。

char const* p与const char* p 是一样的,const修饰的指针指向的值,无法改变指针的内容,但是可以改变指针的指向如

(*p) = 'a' 错误,

p  = "changed"正确

3、const修饰函数

(1)、函数返回值

const int Func(int); 函数必须返回一个const的值

(2)、参数

int Func(const int n) 表示n在整个函数内他的值不会发生改变,

(3)、函数结尾

int Func(int) const

函数必须是类的成员函数,表示该函数无法修改类的成员变量

int Func(int) 与上面是两个可以重载的函数,

const对象会调用const函数,但无法调用non-const函数,但non-const对象两者都可以调用。

当定义一个const对象时会调用上面的const函数。

 

4、Typedef与define区别举例

#define INTPOINT int *

typedef int * IntPoint

const IntPoint p 与IntPoint const p 都是修饰p的,此处可以把IntPoint当成是一个普通类型看,const都是修饰的p,p是一个const指针。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值