Tôi đang sử dụng ubuntu 12.04 - 64 bit. Tôi đã thử nghiệm nó với tăng 1,46, 1,48, 1,52 và gcc 4.4 và 4.6 Khi tôi cố gắng biên dịch:lỗi: không có chức năng phù hợp cho cuộc gọi đến ‘min (dài unsigned int &, unsigned int &)’
while (m_burstReqBeatsRemain) {
if (m_burstReqAddress % m_dramRowSize == 0) {
m_admRequestQueue.push_back(adm_request());
adm_request &req = m_admRequestQueue.back();
req.address = m_burstReqAddress;
req.command = tlm::TLM_READ_COMMAND;
//call to min function
req.readLen = std::min(m_burstReqBeatsRemain * sizeof(Td), m_dramRowSize);
}
m_burstReqBeatsRemain--;
m_burstReqAddress += sizeof(Td);
m_ocpTxnQueue.push_back(m_ocpReq);
}
tôi nhận được lỗi này:
no matching function for call to ‘min(long unsigned int&, unsigned int&)
from /usr/include/c++/4.6/bits/stl_algobase.h*
Lưu ý: với ubuntu 12.04 32 bit công trình fine
Bất kỳ ý tưởng nào về cách khắc phục sự cố này?
Đó là bởi vì bạn đang cố gắng lấy "phút" của hai loại khác nhau và "phút" mong đợi cả hai giá trị sẽ là cùng một loại. –