[英]C++ - why return a reference to the class from a member function
在class下面。 我很難理解為什么你會從成員 function 返回對 class 的引用。
例如 setInterval() 初始化成員變量 'interval. 任何人都可以解釋返回 class 類型的引用的優勢嗎?
它是對 *this 的引用嗎?
template <class Tx, class Ty = Tx>
class FitFunction {
std::pair<Tx, Tx> interval;
uint8_t var = 0;
public:
FitFunction& setInterval(Tx minX, Tx maxX);
};
這不是對 class 的引用,而是對 class實例的引用。
這在您希望可鏈接的函數中很典型,例如:
FitFunction ff;
ff.setInterval(...).setSomethingElse(...);
想法是 function 最后return *this
,所以是的,實際上是對它的引用。
您會看到這種方法更多地用於諸如operator<<
之類的設計中鏈接的流。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.