C++ //练习 10.24 给定一个string,使用bind和check_size在一个int的vector中查找第一个大于string长度的值。

C++ Primer(第5版) 练习 10.24

练习 10.24 给定一个string,使用bind和check_size在一个int的vector中查找第一个大于string长度的值。。

环境:Linux Ubuntu(云服务器)
工具:vim
代码块
cpp 复制代码
/*************************************************************************
	> File Name: ex10.24.cpp
	> Author: 
	> Mail: 
	> Created Time: Sun 03 Mar 2024 08:43:07 PM CST
 ************************************************************************/

#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
#include<functional>
using namespace std;
using namespace placeholders;

bool check_size(const int &n, string::size_type sz){
    return n > sz;
}

int main(){
    string str;
    cout<<"Enter string: ";
    cin>>str;
    string::size_type sz = str.size();

    vector<int> number;
    int num;
    cout<<"Enter numbers: ";
    while(cin>>num){
        number.push_back(num);
        if(cin.get() == '\n'){
            break;
        }
    }

    auto wc = find_if(number.begin(), number.end(), bind(check_size, _1, sz));
    cout<<*wc<<endl;

    return 0;
}
运行结果显示如下
相关推荐
MessiGo10 分钟前
Javascript 编程基础(5)面向对象 | 5.1、构造函数实例化对象
开发语言·javascript·原型模式
大霞上仙14 分钟前
nonlocal 与global关键字
开发语言·python
曦月逸霜15 分钟前
第34次CCF-CSP认证真题解析(目标300分做法)
数据结构·c++·算法
galaxy_strive19 分钟前
绘制饼图详细过程
开发语言·c++·qt
黑客老李1 小时前
JavaSec | SpringAOP 链学习分析
java·运维·服务器·开发语言·学习·apache·memcached
开开心心就好1 小时前
高效Excel合并拆分软件
开发语言·javascript·c#·ocr·排序算法·excel·最小二乘法
特立独行的猫a1 小时前
Nuxt.js 中的路由配置详解
开发语言·前端·javascript·路由·nuxt·nuxtjs
海的诗篇_1 小时前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法
勤奋的知更鸟2 小时前
Java编程之原型模式
java·开发语言·原型模式