具有返回值的Mutators(set-functions)?

rob*_*nnn 1 c++ c++11

我正在学习编程,我刚开始学习设置和获取功能.

我的问题是,如果通常的做法是使用带有返回值的set-functions?就像set-function执行验证一样,如果传入的值通过验证,我希望它返回true.

谷歌搜索它,看着我的课程材料,没有发现任何东西,只有无效的设置功能无处不在!:)

谢谢

Woj*_*wka 5

在某些情况下,您可能希望*this从setter方法返回引用以实现流畅的接口.一个简单的例子:

class C {
  int x,y;
public:
  C& setX(int value) { x = value; return *this; }
  C& setY(int value) { y = value; return *this; }
};
Run Code Online (Sandbox Code Playgroud)

然后可以通过以下方式使用此类:

C c;
c.setX(1).setY(2);
Run Code Online (Sandbox Code Playgroud)