小编cr0*_*0pp的帖子

使用 c++20 范围删除最后一个元素的最佳方法是什么

有没有比反转两次更好的方法来使用 c++20 范围删除容器中的最后一个元素?

#include <iostream>
#include <vector>
#include <ranges>

int main()
{
    std::vector<int> foo{1, 2, 3, 4, 5, 6};

    for (const auto& d: foo | std::ranges::views::reverse 
                            | std::ranges::views::drop(1) 
                            | std::ranges::views::reverse)
    {
        std::cout << d << std::endl;
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ c++20 std-ranges

9
推荐指数
2
解决办法
1816
查看次数

标签 统计

c++ ×1

c++20 ×1

std-ranges ×1