簡體   English   中英

C++ - 為什么從成員 function 返回對 class 的引用

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM