以下知识来源于Essential C++ (P110)
#include <iostream>
#include <vector>
using namespace std;
class Triangular
{
private:
int _length;
int _beg_pos;
int _next;
public:
int beg_pos()const{return _beg_pos;}
//编译会出错,因为在下面的sum函数中,编译器调用的是一个非
//const类成员函数;
//int beg_pos(){return _beg_pos;}
//编译会出错,因为声明为const确又改变了_beg_pos的值
//int beg_pos()const{return _beg_pos++;}
int length()const{return _length;}
int next()const{return _next;}
};
int sum(const Triangular &trian)
{
int beg_pos = trian.beg_pos();
int length = trian.length();
int sum=0;
for(int ix=0;ix<length;++ix)
{
...........
}
return sum;
}
int main()
{
return 0;
}