首页 > 试题广场 >

已知:print( )函数是一个类的常成员函数,它无返回值,

[单选题]

已知:print( )函数是一个类的常成员函数,它无返回值,下列表示中,( )是正确的

  • void print( ) const;
  • const void print( );
  • void const print( );
  • void print(const);
const(*号)左边放,我是指针变量指向常量; const(*号)右边放,我是指针常量指向变量; const(*号)两边放,我是指针常量指向常量;const在*的左边,则指针指向的变量的值不可直接通过指针改变(可以通过其他途径改变);在*的右边,则指针的指向不可变。简记为“左定值,右定向”。
发表于 2019-05-09 22:07:44 回复(0)
const修饰类的成员函数,则该成员函数不能修改类中任何非const成员函数。一般写在函数的最后来修饰。
发表于 2018-01-20 21:21:42 回复(2)
const跟左边结合 看谁是常量
发表于 2017-06-01 09:40:18 回复(1)
void const f() {}  is equivilent to const void f()  which means the return type (in this case a void) is const.
void f() const {} makes the function itself const. This only really has meaning for member functions.
发表于 2022-03-15 11:08:35 回复(1)
在c++中,const修饰常成员函数,需要放在文件末尾
发表于 2022-09-20 14:51:42 回复(0)
常成员函数是指由const修饰符修饰的成员函数,在常成员函数中不得修改类中的任何数据成员的值。
发表于 2021-07-21 10:41:01 回复(0)
其实直接将函数名称看作函数指针,可以轻松写出这道题目,就直接用fun*号代替函数名,表示这是一个函数指针。
void print() const;可以看成void fun* const;那么根据const修饰最近的数据类型的原则,离const最近的是void fun*,所以const修饰的就是void fun*,也就是这个函数本身。
const void print();可以看成const void fun*();离const最近的类型是void,有人说是fun*,要知道fun*只是我们假设出来的,本身并不存在,所以const修饰的是函数的返回值,当然这个函数的返回值为空,所以这种写法本身就不合理。
void const print();可以看成void const fun*();离const最近的类型同样是void,所以和第二个一样,const修饰的是函数的返回值。
void print(const);至于这个,它修饰的是函数的参数,和常函数没有半毛钱关系。
发表于 2024-08-08 17:49:20 回复(0)
const 关键字表示该函数是一个常量成员函数,即在该函数内部不会修改对象的成员变量。

发表于 2023-09-18 12:14:04 回复(0)
常成员函数中不得修改类中的任何数据成员的值,一般const放在末尾
发表于 2023-08-09 22:42:57 回复(0)
类的常对象是不能使用类的一般成员函数的,因为一般成员函数有个this指针,这个this指针没有底层const,类的常对象若使用一般成员函数,相当于用个没有底层const的指针指向一个const对象,这是不安全的,编译会报错,而常成员函数的this指针带有底层const,常对象可以使用(新手浅见,大神勿喷)
发表于 2018-10-07 19:18:27 回复(0)
const修饰类的成员函数,则该成员函数不能修改类中任何非const成员函数。一般写在函数的最后来修饰。
发表于 2024-10-17 13:01:50 回复(0)
常成员函数是指由const修饰符修饰的成员函数,在常成员函数中不得修改类中的任何数据成员的值。
发表于 2023-03-09 13:50:18 回复(1)
想成摩根定律了
发表于 2022-01-11 14:21:58 回复(0)
常成员函数是指由const修饰符修饰的成员函数,在常成员函数中不得修改类中的任何数据成员的值
发表于 2021-10-19 14:50:53 回复(0)

this指针变为底层const,可以指向常量对象

发表于 2018-10-27 00:47:18 回复(0)