9
我正在查看一些開源的源代碼,我注意到對於某些方法,而不是使用void作爲返回類型,他們使用了該類的引用。對象引用vs一個方法的空值返回類型
例子:
class Object
{
private:
float m_x;
public:
Object();
Object& setX(float x)
{
m_x = x;
return *this;
}
};
通常情況下,我會寫這樣相同的功能:
class Object
{
private:
float m_x;
public:
Object();
void setX(float x)
{
m_x = x;
}
};
有沒有使用一個比其他任何優勢?
非常感謝您的回答。我沒有意識到你可以用C++來做到這一點。 – Xplane
這種風格被稱爲[「方法鏈接」](http://en.wikipedia.org/wiki/Method_chaining)或[「流暢界面」](http://martinfowler.com/bliki/FluentInterface.html)。 –