int plugin::feature(const InstanceInput &input) {
auto parse_word=[](const string input_text){
string text = input_text;
int i=text.find("%");
if(i!=-1){
return text.substr(0, i);
}
return "";
};
....
}
我在 Clion 中,它在“return”陳述句中顯示一條錯誤訊息,說明:
return type const char* must match previous return type std:basic_string<char> when lambda expression has unspecified specific return type
如何解決這個問題?
uj5u.com熱心網友回復:
代替:
if(i!=-1){
return text.substr(0, i);
}
return "";
嘗試
if(i!=-1){
return text.substr(0, i);
}
return std::string();
auto您的 lamda 的回傳型別已確定為string在第一種情況下,char*在第二種情況下,這是不匹配的。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/421202.html
標籤:
