이 구조체가 있습니다.find_if에 술어 사용
struct MaxWinPerElementInfo
{
std::string paytableName;
std::string elementName;
long long elementCredits;
bool multiplierRequired;
};
paytableName
과 일치하는 요소를 찾고 싶습니다. 이를 위해 std::find_if
을 술어 기능과 함께 사용할 계획이었습니다.
bool operator() (const MaxWinPerElementInfo &elementInfo) const
{
return paytableName == elementInfo.paytableName;
}
로
struct MaxWinPerElementInfo
내의 기능 개체,
elementInfo
가
std::vector< struct MaxWinPerElementInfo >
및
paytable
는
std::string
이다
std::find_if(elementInfo.begin(), elementInfo.end(), MaxWinPerElementInfo(paytable));
선언. 이것은 레거시 코드 때문에
이 들어나는 오류가 발생하고, no known conversion for argument 1 from ‘std::string {aka std::basic_string<char>}’ to ‘const MaxWinPerElementInfo&’
나는 ++ 11 c를 사용할 수 없습니다.
내가 여기에 누락 되었습니까? 어떤 제안이라도 도움이 될 것입니다.
@Eric Fortin 고마워요. 내 게시물을 업데이트했습니다. –