C++类和对象:常函数和常对象

本文介绍了C++中的常量特性,包括常数据成员的初始化和不可修改性,常对象的声明及初始化,以及常成员函数的定义与使用规则。常数据成员必须在构造函数初始化列表中初始化,常对象在其生命周期内不可更改,常成员函数不能修改非常成员变量,除非成员被mutable修饰。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++中常数据的使用及初始化

关键字是const,所谓的“常”,或或者说被“常”修饰的变量,是不可修改、被改变的,比如用const修饰的一个变量就成了常变量,这个值不可被更改。也就是限制变量为可读状态

那么C++中,一样有常的概念,额外不同的是,const除了可以修饰一般的变量为常变量之外,还可用于修饰某个对象,变成常对象。以及可以修饰类的数据成员和成员函数,分别叫做类的常数据成员和常成员函数。

1、 常数据成员

对于常数据成员的用法,与我们在C语言的用法一样,只不过这部分数据出现在类里,使用的格式如下:

数据类型 const 数据成员名; 或 const 数据类型 数据成员名;

被const修饰的成员则必须进行初始化,并且不能被更改。

而初始化的方式则是在类的构造函数的初始化列表里进行的。

#include<iostream>
using namespace std;
class Clock
{
   
private:
    const int h;  //修饰 h为常类型成员
    const int m;  //修饰 m为常类型成员
    int const s;   //和上面两种用法都可以
    static const int x;  //静态常量类内申明,类外初始化
public:
    Clock(int a,int b,int c):h(a),m(b),s(c)
    {
   
        cout<<"Constrctor! Called"<<endl;
    }
    int ShowTime()
    {
   
        cout<<h<<":"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值