sách gpt4 ăn đã đi

Tại sao lại sử dụng "b < a ? a : b" thay vì "a < b ? b : a" để triển khai mẫu tối đa?

In lại Tác giả: IT Lão Cao Thời gian cập nhật: 28-10-2023 11:30:47 28 4
mua khóa gpt4 giày nike

Mẫu C++ - Hướng dẫn đầy đủ, Phiên bản 2giới thiệutối đabản mẫu:

mẫu
T tối đa (T a, T b)
{
// nếu b < a thì tạo ra a nếu không thì tạo ra b
trả về b < a ? a : b;
}

nó giải thích bằng cách sử dụng “b < a ? a : b”thay vì “a < b ? b : a” :

Lưu ý rằng mẫu max() theo [StepanovNotes] cố ý trả về “b < a ? a : b” thay vì “a < b ? b : a” để đảm bảo rằng hàm hoạt động chính xác ngay cả khi hai giá trị tương đương nhưng không bằng nhau.

Làm sao hiểu được"ngay cả khi hai giá trị tương đương nhưng không bằng nhau.”? “a < b ? b : a”Dường như có kết quả tương tự đối với tôi.

câu trả lời hay nhất

std::max(a, b) thực sự được chỉ định để được trả về khi cả hai bằng nhau Một

Stepanov Nghĩ rằng đây là một lỗi và lỗi khác vì nó phá vỡ quy định Mộtb Những đặc tính hữu ích của bạn luôn có thể sử dụng {min(a, b), max(a, b)};Đối với điều này bạn mong muốn tối đa(a, b) Trả về nếu tham số bằng nhau b

Về c++ - tại sao lại sử dụng "b < a ? a : b" thay vì "a < b ? b : a" cho các mẫu tối đa? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/50834117/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress