百度试题 结果1 题目对于一个函数,如果它被声明为 const,表示什么意思? A. 函数内部不会改变对象的状态 B. 函数不会返回任何值 C. 函数只能被 const 对象调用 相关知识点: 试题来源: 解析 a 反馈 收藏
const对象只能调用const函数的原因是,const对象的状态(即其成员变量的值)是不可变的。如果允许const对象调用非const函数,那么这些非const函数有可能修改const对象的成员变量,从而违反const对象的定义。因此,C++语言规则要求const对象只能调用承诺不会修改其成员变量的const函数。 在编译时,如果尝试用const对象调用非const函数...
1、const成员函数是class中比较特殊的函数。这种函数不能调用非const成员函数。 2、声明const的对象,只能调用const成员函数,而不能调用其他成员函数。
因为常对象那么就意味着该对象的数据成员是不能修改的(除非使用mutable修饰的可变成员外),而那些非const成员函数存在修改数据成员的风险。So,C++要求只能调用const成员函数。
const对象是不可以调用类中的非const成员函数。原因之后解释。 假设现在有如下代码: class test{ int i; public: void print(); test(int i); }; test obj1(12); obj1.print(); 1|0默认this指针 对象调用成员函数时,在形参列表的最前面加一个形参this,但这是隐式的。this指针是默认指向调用函数的当...
const成员函数 2011-04-12 09:45 −本文来自:http://zq2007.blog.hexun.com/8625800_d.html 一些成员函数改变对象,一些成员函数不改变对象。例如: int Point::GetY(){return yVal;} 这个函数被调用时,不改变Point对象,而下面的函数改变Point对象: vo... ...
对const的使用,以下描述错误的为:A.可以用const修饰对象、数据成员或成员函数B.常对象只能调用类的常成员函数C.常数据成员只能由构造函数通过初始化列表进行初始化
(3)在一个函数声明中,const可以修饰形参,表明它是一个输入参数,在函数内部不能改变其值;(4)对于类的成员函数,若指定其为const类型,则表明其是一个常成员函数,不能修改类的成员变量,只能用常实例化对象调用;static关键字内存作用域不同,static函数只是在声明它的文件中可见,不能被其他文件所用...
若一个类的成员函数前用static关键字修饰,则该成员函数 ()A.可以被声明为constB.没有this指针C.可以访问该类的所有成员D.只能用对象名来调用
百度试题 结果1 题目友元函数___ A. 能够被声明为const B. 没有this指针 C. 能够用类名或对象名来调用 D. 只能用对象名来调用 相关知识点: 试题来源: 解析 B 反馈 收藏