Tôi đã xem xét một số mã nguồn mở và tôi nhận thấy rằng đối với một số phương thức, thay vì sử dụng khoảng trống cho kiểu trả về, chúng đã sử dụng tham chiếu đến lớp đó.Tham chiếu đối tượng vs kiểu trả về Void cho phương thức
Ví dụ:
class Object
{
private:
float m_x;
public:
Object();
Object& setX(float x)
{
m_x = x;
return *this;
}
};
Thông thường, tôi sẽ viết các chức năng tương tự như thế này:
class Object
{
private:
float m_x;
public:
Object();
void setX(float x)
{
m_x = x;
}
};
Có lợi thế của việc sử dụng một trong khác không?
Cảm ơn bạn rất nhiều vì câu trả lời. Tôi không nhận ra rằng bạn có thể làm điều đó trong C++. – Xplane
Kiểu này được gọi là ["phương pháp chuỗi"] (http://en.wikipedia.org/wiki/Method_chaining) hoặc ["giao diện thông thạo"] (http://martinfowler.com/bliki/FluentInterface.html). –