东辰安华知识网 东辰安华知识网

东辰安华知识网
东辰安华知识网是一个专业分享各种生活常识、知识的网站!
文章434741浏览52697514本站已运行9224

C语言中constdouble什么意思

大家好,今天给各位分享C语言中constdouble什么意思的一些知识,其中也会对中const是什么意思进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!

本文目录

  1. C++中函数后面跟CONST是什么意思
  2. const类型
  3. c++中的类成员函数后面的const是什么意思
  4. C语言中constdouble什么意思

1、在成员函数中圆括号之后所带的关键字const表明,在该函数中不能改变类中的数据成员的值。带const的函数称为常量成员函数。下面就是个错误例子,说明const的作用:

2、classa{inta;public:voiddisp()const{a=4};//a=4错误};

意思很明显,n是一个只读变量,程序不可以直接修改其值。这里还有一个问题需要注意,即如下使用:inta[n];在ANSIC中,这种写法是错误的,因为数组的大小应该是个常量,而n只是一个变量。

在最后的一种情况下,指针是只读的(即p只读),而在另外两种情况下,指针所指向的对象是只读的(即*p只读)。const是一个左结合的类型修饰符,它与其左侧的类型修饰符一起为一个类型修饰符,所以,intconst限定*p,不限定p。int*const限定p,不限定*p。const离谁近,就限定谁。

这里有一个简便的区分方法:沿着*号划一条线,如果const位于*的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;如果const位于*的右侧,const就是修饰指针本身,即指针本身是常量。

3、const用于函数的地址传递参数

这种形式通常用于在数组形式的参数中模拟传值调用。也就是相当于函数调用者声称:"我给你一个指向它的指针,但你不能去修改它。"如果函数编写者遵循了这个约定,那么就相当于模拟了值传递。这也是const最有用之处了:用来限定函数的形参,这样该函数将不会修改实参指针所指的数据。这里注意了,是函数不应该去修改而不是不能修改,也就是说const不能阻止参数的修改(原因见上)。

上述写法限定函数的返回值不可被更新,当函数返回内部的类型时,已经是一个数值,当然不可被赋值更新,所以,此时const无意义,最好去掉,以免困惑。当函数返回自定义的类型时,这个类型仍然包含可以被赋值的变量成员,所以,此时有意义。

1、首先纠正一个错误,在非const成员函数中,this的类型是T*而非T*const,不能够修改this只是因为它是一个

右值表达式

2、再来回答题主的问题,this的类型是T*还是constT*只与

当前成员函数是否被const修饰

3、详见:

thispointer-cppreference.com

这种表示a是一个常量的double类型。

也就是你这样constdoublea=1.0;以后。

不能令a=2.0了,因为a是常量,不允许改变。

关于C语言中constdouble什么意思的内容到此结束,希望对大家有所帮助。

赞一下
东辰安华知识网
上一篇: 囧表情是什么意思
下一篇: usa同义词是什么
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏