我有功能检查一个字符串是否只包含字母数字和下划线字符...
inline bool IsValidChar(char x)
{
return (isalnum(x) || (x == '_'));
}
Run Code Online (Sandbox Code Playgroud)
我的find_if代码是:
if(find_if(str.begin(), str.end(), IsValidChar) != str.end())
{
...
}
Run Code Online (Sandbox Code Playgroud)
我只想删除IsValidChar函数并直接将其内容放在find_if代码行中.
你基本上在寻找C++ 0x lambda表达式:
if (find_if(str.begin(), str.end(),
[](char x) { return (isalnum(x) || x == '_'); })
!= str.end()) {
// Do something.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3206 次 |
| 最近记录: |