MST

星途 面试题库

面试题:C++中如何在STL算法中使用Lambda表达式实现对vector内偶数元素翻倍

假设有一个`std::vector<int>`,名为`nums`,请使用C++的Lambda表达式结合STL算法,将其中的偶数元素翻倍。请写出完整的代码实现。
44.8万 热度难度
编程语言C++

知识考点

AI 面试

面试题答案

一键面试
#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    std::vector<int> nums = {1, 2, 3, 4, 5, 6};
    std::for_each(nums.begin(), nums.end(), [](int& num) {
        if (num % 2 == 0) {
            num *= 2;
        }
    });
    for (int num : nums) {
        std::cout << num << " ";
    }
    return 0;
}