C++中const的基本用法

首先来个常见的面试题

const与define的区别?
1.编译器处理不同
2.存储方式不同
3.类型和安全检查不同
4.定义域不同
5.是否可以做函数参数
6.定义后能否取消
宏定义可以通过#undef来使之前的宏定义失效
const常量定义后将在定义域内永久有效

关于const的基本使用用法

1.常对象

形式:类名 const 对象名[(实参表)] 或者 const 类名 对象名 [(实参表)]
注意:   1)常对象成员必须有初值,定义之时必须进行初始化不能在改变。
         2)该对象只能调用它的常成员函数,不能调用普通成员函数。

2.常对象城成员(包括常数据成员和常成员函数)

     常数据成员
   形式: const int hour
   初始化: Time ::Time(int h):hour(h) { }      
   注意:只能通过构造函数的参数化初始化表对常对象成员进行初始化,任何其他函数不能对常对象成员赋值。 
常成员函数
形式:void get_name()const
注意:
    如果已经定义了一个常对象,只能调用其中的const成员函数,而不能调用非const成员函数。
    并不是常对象所有的函数都是常成员函数。只有声明const才为const函数。为声明则会作为非const成员函数处理。
    常成员函数不能调用另外一个非const成员函数。

指向对象的常指针
形式:类名 *const 指针变量名
注意:将指针变量声明为const型,这样指针变量保持为初值,不能改变,指向不能变。
适用:如果一个指针变量固定的与某一个对象相联系,可以指定为const型指针变量。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风赤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值