Tôi biết bạn có thể sử dụng từ khóa C++ 'rõ ràng' cho các nhà xây dựng của các lớp học để ngăn chặn việc chuyển đổi kiểu tự động. Bạn có thể sử dụng lệnh này để ngăn việc chuyển đổi các tham số cho một phương thức lớp không?Bạn có thể sử dụng từ khóa rõ ràng để ngăn việc tự động chuyển đổi các tham số phương thức không?
Tôi có hai thành viên lớp học, một thành viên tham gia bool dưới dạng tham số, một hàm khác là int không dấu. Khi tôi gọi hàm với một int, trình biên dịch chuyển đổi param thành một bool và được gọi là phương thức sai. Tôi biết cuối cùng tôi sẽ thay thế bool, nhưng bây giờ không muốn phá vỡ các thói quen khác như thói quen mới này được phát triển.
Tự hỏi điều tương tự này và nghĩ rằng đây sẽ là cú pháp hữu ích cho một số chức năng miễn phí nhất định. Thông thường tôi muốn tham chiếu đến một lớp dẫn xuất để ngầm tạo ra lớp cơ sở, ngoại trừ trong trường hợp việc cắt không mong muốn có thể xảy ra, chẳng hạn như với hàm swap(). Có trao đổi (rõ ràng Foo & lhs, rõ ràng Foo & rhs) sẽ được an ủi. –