tôi có thể thấy một cái gì đó như sau là hữu ích:Tại sao các chức năng RHR không bị quá tải?
class A {
public:
const vector<int>& vals() const {
return val;
}
vector<int> vals() && {
return std::move(val);
}
private:
vector<int> val;
}
Nhưng tôi nhận được một lỗi biên dịch với g ++:
error: ‘vector<int> A::vals() &&’ cannot be overloaded
tôi sẽ nghĩ rằng bạn muốn có thể làm cùng một loại quá tải mà bạn có thể thực hiện với các chức năng const
. Điều này sẽ ít hữu ích hơn cho người truy cập ở trên và hữu ích hơn cho các nhà khai thác.
Không có hàm 'foo' trong lớp của bạn ..? –
Bạn không thể quá tải thứ gì đó với * vòng loại * với thứ gì đó không có. –
@ AndréCaron xin lỗi đã sao chép lỗi từ một thử nghiệm mà tôi đã làm. Sửa lỗi. – IdeaHat