template<typename T> T SmartIO::Peek() {
T temp;
T tempReturn;
while(true){
temp = *(T*)&buffer[ptrSeek];
if(temp !=0){
ptrSeek++;
tempReturn += *(T*)&buffer[ptrSeek];
}
else{
break;
}
}
return tempReturn;
}
所以我想要做的是,從ptrSeek開始讀取循環,將值添加到temp並檢查temp的值!= 0將此值添加到tempReturn,一旦臨時的值是0打破循環,並返回tempReturnbut,但它不斷給我這個錯誤:錯誤C2678:二進制'!=':沒有找到需要左手操作數的操作符
error C2678: binary '!=' : no operator found which takes a left-hand operand of type 'std::basic_string<_Elem,_Traits,_Ax>' (or there is no acceptable conversion)
我怎麼可以在這裏解決這個問題呢?
我所要做的就是檢查temp是否有值或沒有值,我會打斷循環。 – Abanoub
你是什麼意思「有價值與否?」一切都有價值。你的意思是它是否有你關心的某個特定的價值? – templatetypedef
好吧,我希望它返回下一個可用的字符,這是我的主要觀點,然後我想把它作爲模板,所以我可以返回下一個可用的類型,我把它傳遞給模板! – Abanoub