C++ 基础 const放在函数末尾的意思】的更多相关文章

const 放在函数后表示这个函数是常成员函数, 常成员函数是不能改变成员变量值的函数.const 限定符,它把一个对象转换成一个常量.举例:为了使成员函数的意义更加清楚,我们可在不改变对象的成员函数的函数原型中加上const说明:class Point{public:int GetX() const;int GetY() const;void SetPt (int, int);void OffsetPt (int, int);private:int xVal, yVal;};const成员函数…
转载:const放在函数前后的区别 一.const修饰指针 int b = 500; 1.const int * a = & b; 2.int const * a = & b; 3.int * const a = & b; 4.const int * const a = & b; 对于1和2 const 放在*左侧,就是用来修饰指针所指向的变量,即指针指向的是常量. 若a是仓库管理员,b是仓库.即仓库中的货物(*a)不允许改变.但是可修改指针指向或b的值来改变*a. 对于3…
class c { public: returnType functionName (parameter list) const; //这个函数不会修改类成员 const returnType functionName (parameter list); //返回常量 private: ........... };…
template < class T, class container = vector<T> > class MyClass{ private: T value; public: /* void assign(const MyClass<T>& x){ value = x.value; }*/ template<class X> void assign(const MyClass<X>& x){ value = x.value;…
At the very first ,I got a problem . Vector Vector::operator+(const Vector &v)const{ return Vector(x+v.val_x() ,y+v.val_y());//at the very fisrt, I didn't add const to the //implemention of val_x()function,so i got an error.you should not call an unc…
一些成员函数改变对象,一些成员函数不改变对象. 例如: int Point::GetY() { return yVal; } 这个函数被调用时,不改变Point对象,而下面的函数改变Point对象: void Point:: SetPt (int x, int y) { xVal=x; yVal=y; } 为了使成员函数的意义更加清楚,我们可在不改变对象的成员函数的函数原型中加上const说明: class Point { public: int GetX() const; int GetY()…
一些成员函数改变对象,一些成员函数不改变对象. 例如:  int Point::GetY() { return yVal; }  这个函数被调用时,不改变Point对象,而下面的函数改变Point对象:  void Point:: SetPt (int x, int y) { xVal=x; yVal=y; }  为了使成员函数的意义更加清楚,我们可在不改变对象的成员函数的函数原型中加上const说明:   class Point {  public: int GetX() const; int…
1.const放在函数前面 如果我们的函数的返回值是以 指针形式 返回的,如果在函数前面加上const修饰,则表示指针指向的内容是不能被改变的,并且接收返回值的 指针变量必须是const修饰的,例如: const char *func(.....);    // 如果有这样的函数 char *ptr = func(...);     //这样是错误的 const char *ptr = func();   // 这样是正确的 2.const放在函数的参数前面,修饰参数 void func(con…
类的成员函数后面加 const,表明这个函数不会对这个类对象的数据成员(准确地说是非静态数据成员)作任何改变. 在设计类的时候,一个原则就是对于不改变数据成员的成员函数都要在后面加 const,而对于改变数据成员的成员函数不能加 const.所以 const 关键字对成员函数的行为作了更加明确的限定:有 const 修饰的成员函数(指 const 放在函数参数表的后面,而不是在函数前面或者参数表内),只能读取数据成员,不能改变数据成员:没有 const 修饰的成员函数,对数据成员则是可读可写的.…