您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> C/C++ >> const 修饰函数的问题

const 修饰函数的问题

来源:网络整理     时间:2016/9/1 19:27:41     关键词:

关于网友提出的“ const 修饰函数的问题”问题疑问,本网通过在网上对“ const 修饰函数的问题”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: const 修饰函数的问题
描述:

void func(){}const   是只被这样的对象调用么 class F{}  const F a;


解决方案1:

class A
{
public:
  void fun(){}
  void fun_const() const{}
  void fun_volatile() volatile{}
  void fun_const_volatile() const volatile{}
};
int main()
{
    
    A a;//可以对a调用一切可见的成员函数
    a.fun();//OK;
    a.fun_const();//OK;
    a.fun_volatile();//OK;
    a.fun_const_volatile();//OK;
    
    A const ca;//只能调用ca的const成员函数
    ca.fun();//错误!不能调用non-const成员函数
    ca.fun_const();//OK;
    ca.fun_volatile();//错误!不能调用non-const成员函数
    ca.fun_const_volatile();//OK;
    A volatile va;//只能调用va的volatile成员函数
    va.fun();//错误!不能调用non-volatile成员函数
    va.fun_const();//错误!不能调用non-volatile成员函数
    va.fun_volatile();//OK;
    va.fun_const_volatile();//OK;
    
    A const volatile cva;//只能调用cva的const volitale 成员函数
    cva.fun();//错误!不能调用non-volatile、non_const成员函数
    cva.fun_const();//错误!不能调用non-volatile成员函数
    cva.fun_volatile();//错误!不能调用non-const成员函数
    cva.fun_const_volatile();//OK;
   return 0;
}

以上介绍了“ const 修饰函数的问题”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3709368.html

相关图片

相关文章