Giả sử tôi có hai lớp foo
và bar
có liên quan khá tốt, theo đó tôi có nghĩa là chúng chứa các thành viên dữ liệu chung.Sử dụng ngữ nghĩa di chuyển cho toán tử cast
Tôi có toán tử truyền operator bar() const;
trong lớp foo
.
Tôi cũng có chức năng func
có số bar
.
Nếu tôi gọi func
với tạm thời vô danh foo
thì toán tử truyền sẽ được gọi. Nhưng vì tôi không cần số foo
, tôi có thể tuyên bố một số loại di chuyển cast để tối ưu hóa rõ ràng mọi bản sao không cần thiết?
Bạn có thể đăng ví dụ của mình bằng mã thực tế không? –
Đây là toán tử ** chuyển đổi **. Không có điều như một nhà điều hành diễn viên. Diễn viên là nội dung bạn viết trong mã của mình để yêu cầu chuyển đổi, nhưng đó không phải là cách duy nhất để nhận chuyển đổi. –
Cho bất kỳ ai đã bỏ phiếu để đóng câu hỏi này vì câu hỏi "tại sao mã này không hoạt động" cần MCVE - đây là câu hỏi * không * a "tại sao mã này không hoạt động". Trong khi một ví dụ mã chắc chắn sẽ không làm tổn thương câu hỏi này, nó là khá dễ hiểu mà không có nó. – Angew