Tôi đang cố gắng xây dựng một chương trình sử dụng phần tử thứ hai để cuối cùng trong một vectơ, cho đến nay tôi đã sử dụng: (arr2.rbegin() + 1)Mã cho phần tử thứ hai thành phần tử cuối cùng trong một vector
Nếu tôi sử dụng một toán tử so sánh trong một điều kiện như:
if(arr2.rbegin()+1 == true)
tôi nhận được một thông báo lỗi: 'no match for operator =='
'arr2.rbegin() + 1' là một iterator, không phải là một giá trị. Hãy thử sử dụng '*': 'if (* (arr2.rbegin() + 1) == true)' – JoshG79
'* (arr2.rbegin() + 1)' hoặc 'arr2 [arr2.size() - 2]' – Dave
@ JoshG79: Trong trường hợp đó, loại bạn nhận được khi dereferencing iterator cần xác định toán tử thích hợp ==. – thokra