使用迭代器时可以速记“begin..end”吗?

2023-11-26

怎样才能避免写作smth.begin(), smth.end()一直在使用迭代器?

例如,如果您必须使用std::reverse– 它看起来像这样:

std::reverse(mystr.begin(), mystr.end());

但我想我在某个地方看到人们在做同样的事情,如下所示:

std::<something>::reverse(mystr);

您正在寻找std::ranges::reverse()来自<algorithm> header.

因此,缺少的命名空间是ranges,这需要一个支持的编译器c++20或更高。

#include <algorithm>

std::ranges::reverse(mystr);

还可以查看其他范围算法<algorithm>,以及来自的适配器<ranges>,这可能也很有趣。

例如,如果mystr只需要以相反的顺序查看,更合适的是std::ranges::views::reverse/ std::ranges::reverse_view适配器。

#include <ranges> // std::ranges::views::reverse

auto rev_v1 = std::ranges::views::reverse(mystr);
// or
std::ranges::reverse_view rev_v1{ mystr };
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用迭代器时可以速记“begin..end”吗? 的相关文章

  • 使用管道在父级和子级之间传递整数值

    我对如何正确使用 pipeline 在两个进程之间传递整数值有点困惑 在我的程序中 我首先创建一个管道 然后分叉它 我假设我有 两个 管道 据我了解 这是我的任务 我的父母通过 for 循环检查某个操作的整数值 i 增加计数变量 并将值保存
  • 非模板函数中的尾随返回类型[重复]

    这个问题在这里已经有答案了 我见过有人使用以下语法来实现函数 auto get next gt int 代替 int get next 我理解两者 并且我知道尾随返回类型语法对于使用 decltype 的模板代码很有用 就我个人而言 我会避
  • 无法在 CUDA 中找到 1 到 100 数字的简单和?

    我正在研究使用 CUDA 的图像处理算法 在我的算法中 我想使用 CUDA 内核找到图像所有像素的总和 所以我在cuda中制作了内核方法 来测量16位灰度图像的所有像素的总和 但我得到了错误的答案 所以我在cuda中编写了一个简单的程序来查
  • 使用 POST 的 HttpWebRequest 的性能

    我有一个用于测试网络服务的小工具 它可以使用 POST 或 GET 调用 Web 服务 使用POST的代码是 public void PerformRequest WebRequest webRequest WebRequest Creat
  • 我担心我添加了太多接口

    我正在构建我的领域模型并继续重构它 正如我所做的那样 我发现我喜欢接口 因为它允许我根据接口为具体类型创建可重用的方法 控制器 视图 但是 我发现每次向域实体之一添加新属性时 我都会创建一个接口 例如 我有一个会员状态从抽象继承的对象Ent
  • 在 C# 中解析 JS Date.toIsoString

    我需要将 JS 日期存储为 ISO 8601 日期 我目前正在从格式为 2019 06 22T00 00 00 000Z 的表单中获取日期 正如 JS 的 toIsoString 方法所期望的那样 当这个日期传递到我的 API 控制器时 我
  • 维护 VS Test Project 中单元测试方法之间的上下文

    我想按顺序运行以下单元测试 使用随机数字的名称 密码等创建新客户 检索刚刚创建的客户并断言其属性包含相同的随机数 对同一用户调用 ForgotPassword 函数 并使用相同的随机数作为用户名 清楚地看到 我需要生成一次随机数 并在 3
  • 加载 QPixmap 数据的更好方法

    更好的方法来做到这一点 没有QImage QImage image width height QImage Format RGB888 memcpy image bits m frameRGB gt data 0 height width
  • DateTime.ParseExact - 为什么 yy 变成 2015 而不是 1915

    为什么 NET 假定以下年份是 2015 年 而不是 1915 年 var d DateTime ParseExact 20 11 15 dd MM yy new CultureInfo en GB 我想 它会尝试接近 但其背后是否有合理的
  • 使用任一默认捕获模式时,这是通过复制捕获还是 (*this) 通过引用捕获?是一样的吗?

    当我看到以下工作时我有点困惑 struct A void g void f g 但后来我发现this https stackoverflow com a 16323119 5825294答案非常详细地解释了它是如何工作的 本质上 它归结为t
  • C# 可以为控制台应用程序部分类“程序”类吗?

    我想知道是否可以将为任何控制台应用程序创建的默认 程序 类更改为部分类 我想这样做是因为我想要更好的组织 而不是将所有方法都放在按区域分类的 1 个文件中 对我来说 将某些方法类别放在单独的文件中会更有意义 我对分部类的理解是 它是多个文件
  • 将 AutomationID 与 ListView 结合使用

    我正在尝试将 AutomationId 附加到列表视图中的项目 理想情况下 将项目名称绑定到显示的项目
  • 运行实体框架自定义工具,它有什么作用?

    在 Visual Studio 中 当使用实体框架并为 tt 和 Context tt 文件应用运行自定义工具时 它是什么以及它有什么作用 为什么它解决数据库同步问题 有时 为什么我应该在运行 tt 之前运行它 Context tt 它被称
  • fgets溢出后如何清除输入缓冲区?

    当输入字符串超出其预定义限制时 我遇到了 fgets 的小问题 以下面的例子为例 for index 0 index lt max index printf Enter the d string index 1 if fgets input
  • 为什么这个位图图像在加载后会改变大小?

    快速提问 我有这个1000 1000位图图像 我使用这个例程来加载它 private BitmapSource initialBitmap new BitmapImage new Uri C Users Desktop Original b
  • 让 Windows 尝试读取文件

    我正在对 Windows 文件系统进行某种封装 当用户请求打开文件时 Windows 调用我的驱动程序来提供数据 在正常操作中 驱动程序返回缓存的文件内容 但是 在某些情况下 实际文件没有缓存 我需要从网络下载它 问题是是否有可能让 Win
  • Windows Phone 的 JSON 反序列化

    我正在尝试反序列化以下 JSON 但我真的不知道如何使用 JSON net 来完成这项工作 我正在使用 C 和 JSON Net 库 我的 JSON 如下 found 3 bounds 43 54919 172 62148 43 54487
  • 如何将模型绑定到动态创建的类 nancyfx

    首先感谢任何愿意查看我的问题的人 我对 Nancyfx 还很陌生 在尝试将 JSON 有效负载绑定到动态创建的类时遇到问题 我按照这篇文章中的代码动态创建了该类 在C 中动态创建一个类 https stackoverflow com que
  • 使用空的weak_ptr作为参数调用map::count安全吗?

    打电话安全吗map count http www cplusplus com reference map map count on an 未初始化因此为空weak ptr http en cppreference com w cpp mem
  • 将同步 zip 操作转换为异步

    我们有一个现有的库 其中一些方法需要转换为异步方法 但是我不确定如何使用以下方法执行此操作 错误处理已被删除 该方法的目的是压缩文件并将其保存到磁盘 请注意 zip 类不公开任何异步方法 public static bool ZipAndS

随机推荐

  • MySQL - 一组时间差的总和

    我想对所有时间差求和以显示志愿者的总工作时间 获取时间差的结果集很容易 Select timediff timeOut timeIn FROM volHours WHERE username skolcz 它给出了按小时列出的时间列表 但我
  • Python程序删除文本文件中的特定行[重复]

    这个问题在这里已经有答案了 我有一个文本文件 Thai Rectangle2 National Parks txt 其中包含以下几行 1 2 3 4 5 dy 0 5965 7 现在 我想删除该文本文件中的第 6 行 为此 我使用以下 py
  • @OrderColumn、@OneToMany 和集合的空索引列

    我正在尝试创建保留顺序的父子表 Hibernate 文档中的示例 7 8 显示了如何执行此操作 Entity public class Customer Id GeneratedValue public Integer getId retu
  • 为什么 Apache 的 RewriteRule 会泄露本地路径?

    我正在尝试使用 RewriteRules htaccess具有相对路径 但 Apache 似乎想要输出physical路径而不是server每当我尝试输出相对路径时 绝对路径和服务器根路径工作正常 例如 RewriteEngine On t
  • PHP:strlen返回字符长度而不是字节长度[重复]

    这个问题在这里已经有答案了 我有一个 WordPress 网站 我创建了简单的页面模板 例如 然后我使用这个模板创建了一个页面 该页面显示俄语字符串 意思是 你好 的长度 我期望看到 12 因为由 6 个字符组成的 UTF 8 编码的俄语字
  • 使用物理定律模拟轨道[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 在过去的几周里 我一直在尝试模拟太阳系模拟中的轨道 这是我作为大学模块的一部分进行的 简而言之 我的模拟是使用 Ogre3D 渲染引擎用 C 编写的 我尝试使用牛顿万有引力定律来
  • 未捕获的类型错误:无法读取 null 的属性“offsetTop”

    我正在使用 HTML CSS 和 JavaScript 创建一个带有粘性和响应式导航栏的网页 我创建了响应式导航栏 并试图使其具有粘性 问题是它不粘并且显示错误 未捕获的类型错误 无法读取 null 的属性 offsetTop HTML 代
  • Python3 和 pandas

    我检查了一些其他的答案 并在谷歌上进行了广泛的搜索 似乎找不到有人问过 回答过这个问题 我运行的是 Ubuntu 12 04 我安装了python2 7和python3 2 我运行了 sudo apt get install python
  • C 与 C++ 中具有静态存储持续时间的对象的初始化 [重复]

    这个问题在这里已经有答案了 可能的重复 main 返回什么 例如 以下代码编译时不会出现任何警告 include
  • 使用 Xamarin Form 获取设备属性?

    我正在使用 xamarin 表单设计一个跨平台应用程序 每个页面 视图 表单都是从代码隐藏设计的 现在我想读取用户使用的设备的高度和宽度 根据这些值 我想放置一些页眉和页脚 为了获取 Xamarin Forms 解决方案中的屏幕宽度 或高度
  • 预计加入路径!休眠错误

    我尝试进行连接 但不断收到此错误 预计加入路径 选择 t CourseId FROM 任务作为 t INNER JOIN 课程为 c CoursePermissions 为 cp 哪里 t CourseId 1 I have const s
  • 使用 Node.js 开发丰富的应用程序

    我是 Node js 的新手 需要使用 Node js 开发一个基于 Web 的丰富应用程序 现在我正在研究 Node js 的入门指南 我有机会查看该页面here并对数百个框架感到困惑 我不知道如何选择合适的框架 需要这方面的帮助才能做出
  • 从 HSQLDB 中记录 SQL 表达式

    我在我的应用程序中使用 HSQLDB 现在我需要记录执行的每一条sql语句 我不想自己处理 SQL 日志记录 HSQLDB 中是否有执行此操作的标准方法 HSQLDB 2 2 x 支持 SQL 日志记录 假设你的数据库名为test然后使用
  • OpenCV Android 背景减法

    我正在开发一个机器人项目 使用 Android 手机作为主处理器 并使用摄像头来检测运动 我拿到来自 OpenCV 的 Android 二进制包并正确安装 我可以使用 OpenCV 本机相机捕获图像并将其显示到屏幕上 不过 我在使用背景扣除
  • 带有 Rails 3.0 的 Google 地图 API

    我想知道是否有人使用过带有 Rails 3 的 Google Maps API 我正在寻找发布想法 gems 插件等 我玩过ym4r gm 插件今天几个小时 运气不太好 你在 Rails 3 上使用过这个 API 吗 提前致谢 仅供参考 我
  • C# 中的函数指针

    我想在某些方面 或两者 Delegate or MethodInfo有资格获得这个称号 然而 两者都没有提供我正在寻找的语法优美性 简而言之 有什么方法可以写出以下内容 FunctionPointer foo whatever create
  • orElse 如何在偏函数上工作

    我的行为非常奇怪 至少在我看来 orElse方法定义于PartialFunction 在我看来 val a PartialFunction String Unit case hello gt println Bye val b Partia
  • 错误:“brew link”步骤未成功完成

    我正在尝试通过 Homebrew 安装 Node js 不幸的是 我收到此错误 brew install node gt Downloading http nodejs org dist v0 8 10 node v0 8 10 tar g
  • 保存事件后触发 MS Word 宏

    我的 MS Word 2007 模板有一个页脚 其中包含文件名 用户将打开模板并执行 另存为 来制作文档 我希望页脚中显示的文件名立即更新为新文件名 有没有一个AfterSaveEvent或者我可以用作钩子来启动执行更新的 VBA 脚本的东
  • 使用迭代器时可以速记“begin..end”吗?

    怎样才能避免写作smth begin smth end 一直在使用迭代器 例如 如果您必须使用std reverse 它看起来像这样 std reverse mystr begin mystr end 但我想我在某个地方看到人们在做同样的事