미해결
[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
lambda강의를 듣고 코딩문제에서 구현해봤는데 잘 안되네요 ㅠㅠ
struct isSpecial
{
bool operator()(char c)
{
return !((c >= 48 && c <= 57) || (c >= 97 && c <= 122) || c == '-' || c == '_' || c == '.');
}
};
// auto isSpecial = [](char c) {return ((c >= 48 && c <= 57)|| (c >= 97 && c <= 122) || c == '-' || c == '_' || c == '.'); };
new_id.erase(remove_if(new_id.begin(), new_id.end(), isSpecial()), new_id.end());
new_id는 string입니다..
struct isSpecial로 remove_if에 전달하면 실행되는데
아래 lambda문법으로 isSpecial을 전달하면
"E1767 지정된 인수 목록으로 함수 "lambda []bool (char c)->bool"을(를) 호출할 수 없습니다."
라며 오류가 발생합니다 ㅠㅠ 왜이러는건가요