Qt自定义函数后面加上const的作用

  • Post author:
  • Post category:其他


在我们看一些案例程序时,我们通常会看见const,位于函数的后面,下面,我们来看一些程序示例,来依靠这些程序示例,来讲解一下。

    void setObjID(int nObjID);//设置ObjID值,这个值不知道有啥用
    int  objID() const;//返回ObjID值

这里是头文件里面对下面函数所做出的声明。

void CDrawObj::setObjID(int nObjID)//设置ObjID值,这个值表示对象ID
{
    m_nObjID = nObjID;
}

int CDrawObj::objID() const//返回ObjID值,对象ID
{
    return m_nObjID;
}

这里是函数的整体,我们观察这两个函数,一个是设置对象值函数,一个是返回对象值函数,前者函数声明与函数主体都没有加上const,而后者却加上了const。

这是因为前者需要设置,改变对象的值,不能加上const,若加上const,则程序会出现报错,而且设置函数值功能也无法完成,后一个程序加上了const,是为了在返回对象值时,不产生其他操作,不改变此处对象的值,从而保证程序运行正确性。

上面介绍了加上const与不加上const的区别,我相信大家看完,都能了解啥时候该加上,啥时候不该加上。

以上,各位加油呀!



版权声明:本文为weixin_44339813原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。