const可以出现在函数头,参数列表,以及参数尾
2009-04-24 13:44
866 查看
const可以出现在函数头,参数列表,以及参数尾
如: const int& SetPoint(const int& param) const
第一个const: 函数的返回值限定为const,即返回值不能被修改. const int a=SetPoint(...) a在此之后便不能被修改
第二个const:就是你所问的const 指函数的形参为const类型,函数体内不能被修改.
第三个const:即类的成员函数后面加 const 表明这个函数不会对这个类对象的数据成员(准确地说是非静态数据成员)作任何改变。
在设计类的时候,一个原则就是对于不改变数据成员的成员函数都要在后面加 const,而对于改变数据成员的成员函数不能加 const。所以 const 关键字对成员函数的行为作了更加明确的限定:有 const 修饰的成员函数(指 const 放在函数参数表的后面,而不是在函数前面或者参数表内),只能读取数据成员,不能改变数据成员;没有 const 修饰的成员函数,对数据成员则是可读可写的。
在类的成员函数后面加 const ,则常量(即 const)对象可以调用 const 成员函数,而不能调用非const修饰的函数。正如非const类型的数据可以给const类型的变量赋值一样,反之则不成立。
对于const成员函数,"不能修改类的数据成员,不能在函数中调用其他不是const的函数",这是由const的属性决定的
如: const int& SetPoint(const int& param) const
第一个const: 函数的返回值限定为const,即返回值不能被修改. const int a=SetPoint(...) a在此之后便不能被修改
第二个const:就是你所问的const 指函数的形参为const类型,函数体内不能被修改.
第三个const:即类的成员函数后面加 const 表明这个函数不会对这个类对象的数据成员(准确地说是非静态数据成员)作任何改变。
在设计类的时候,一个原则就是对于不改变数据成员的成员函数都要在后面加 const,而对于改变数据成员的成员函数不能加 const。所以 const 关键字对成员函数的行为作了更加明确的限定:有 const 修饰的成员函数(指 const 放在函数参数表的后面,而不是在函数前面或者参数表内),只能读取数据成员,不能改变数据成员;没有 const 修饰的成员函数,对数据成员则是可读可写的。
在类的成员函数后面加 const ,则常量(即 const)对象可以调用 const 成员函数,而不能调用非const修饰的函数。正如非const类型的数据可以给const类型的变量赋值一样,反之则不成立。
对于const成员函数,"不能修改类的数据成员,不能在函数中调用其他不是const的函数",这是由const的属性决定的
相关文章推荐
- const可以出现在函数头,参数列表,以及参数尾
- 生成器+列表生成式,生成器可以节省内存,随时调取函数运行,以及实现多线程运行函数,__next__()和.send(参数)的区别,a,b=b,a+b其实是元祖的用法,出现异常状态用try...except StopIteration来处理
- C++关于类成员函数在参数列表后加const的作用,以及使用条件
- C# 语言在函数参数列表中出现this关键词的作用
- await is a reserved word 以及将forEach方法的参数改为async函数出现的问题
- 终于明白为什么无参数函数名,以及函数指针定义时参数列表一定要写上(void)而不是空着了
- C# 语言在函数参数列表中出现this关键词的作用
- 这是一个服务端自动验证框架,可以对JavaBean中的属性以及方法中参数列表进行自动验证
- Jquery自定义一个带名称的、可以传参数的函数以及setTimeout延迟调用,用法详解
- 类成员函数声明出的const以及某函数参数中的const
- const引用和函数占位参数遇上默认参数以及内联函数
- 【转载】用const修饰函数 以及引起的附加限制:const函数不能调用非const的函数或引用非const参数
- Delphi 中 函数参数中的 const 修饰符的本质以及注意事项
- 学习笔记 C++ const放在函数体前和函数参数列表之后的作用
- vs2010编译时出现错误提示:error C2470: “xx”: 看起来像函数定义,但没有参数列表;跳过明显的函数体
- 【C/C++学院】0819-/类的成员函数与const-mutable /构造与析构/拷贝构造deletedefault以及深浅拷贝/静态成员函数成员变量类在内存的存储默认参数/友元类以及友元函数
- C# 语言在函数参数列表中出现this关键词的作用
- C# 语言在函数参数列表中出现this关键词的作用
- Delphi 中 函数参数中的 const 修饰符的本质以及注意事项
- 常引用,const引用的案例,以及常引用作函数参数