range-v3 如何操作::使用分隔符连接

2023-12-01

我从 git 获取 MSVC 的 range-v3。并通过MSVC C++14编译器进行编译。

考虑代码:

auto getter2 = [](const std::string&r) { return r+r; };
std::vector<std::string> vv = { "11","22", "33" };
std::cout << (vv | view::transform(getter2) | action::join) << std::endl;

它按预期工作。 但我想添加分隔符来加入,如果我写

std::cout << (vv | view::transform(getter2) | action::join(",")) << std::endl;

该代码未编译。怎么了? 大量编译器错误如下:

1>d:\sources\ranges_test\ranges_test.cpp(28): error C2672: 'operator __surrogate_func': no matching overloaded function found
1>d:\sources\ranges_test\ranges_test.cpp(28): error C2783: 'unknown-type ranges::v3::action::action<ranges::v3::action::join_fn>::operator ()(Rng &,Rest &&...) const': could not deduce template argument for '__formal'
1>d:\sources\fingrad\dev.fingrad\src\vc\lib\range\v3\action\action.hpp(120): note: see declaration of 'ranges::v3::action::action<ranges::v3::action::join_fn>::operator ()'
1>d:\sources\ranges_test\ranges_test.cpp(28): error C2893: Failed to specialize function template 'unknown-type ranges::v3::action::action<ranges::v3::action::join_fn>::operator ()(T &&,Rest &&...) const'
1>d:\sources\ranges_test\ranges_test.cpp(28): note: With the following template arguments:
1>d:\sources\ranges_test\ranges_test.cpp(28): note: 'T=const char (&)[2]'
1>d:\sources\ranges_test\ranges_test.cpp(28): note: 'Rest={}'
1>d:\sources\ranges_test\ranges_test.cpp(28): note: 'A=ranges::v3::action::join_fn'

UPDATE

不仅 MSVC 端口行为如此,而且here too


Guessing: A string literal isn't a range. Try passing std::string(",") or view::c_str(",") to view::join instead.

更新:啊。试试这个(用 clang trunk 测试):

#include <range/v3/all.hpp>
#include <vector>
#include <iostream>
int main()
{
    using namespace ranges;
    std::vector<std::string> vv = { "11","22", "33" };
    auto getter2 = [](auto&r) { return view::concat(r, r); };

    std::cout << (vv | view::transform(getter2) 
                     | view::join(',')
                     | to_<std::string>()) << std::endl;
    return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

range-v3 如何操作::使用分隔符连接 的相关文章

  • 使用内部构造函数实例化类

    我有一个类 其构造函数被定义为内部 这意味着我无法实例化它 虽然这可能有道理 但出于调试和研究目的 我仍然愿意做一次 是否可以通过反射来做到这一点 我知道我可以访问私有 内部成员 但是我可以调用内部构造函数吗 或者 由于构造函数没有做任何重
  • 可选参数“必须是编译时常量”

    我有一个类分为两个部分文件 如下所示 public partial class PersonRepository BaseRepository
  • 隐形打开的弹出窗口

    第二天就解决这个问题 要重现 请创建新的 WPF 应用程序 xaml
  • TestMethod:异步任务 TestSth() 不适用于 .NET 4.0

    我正在尝试使用 NET 4 0 BCL Async 和 MsTest 运行异步测试方法 看来这个设置不能处理 测试方法 异步Task测试Sth 由于测试用例资源管理器中缺少条目 将签名更改为异步后void 我可以运行测试用例 但结果错误 根
  • initializer_list 和默认构造函数重载决策

    include
  • 我们应该使用 Eval 还是 Databind 事件?

    当使用 Asp Net 并使用 ListView 等控件创建网站时 使用 Eval 命令是一个好习惯吗 还是应该在 databind 事件中填充文字和数据 取决于您是否想在更新事件上写回数据 在这种情况下数据绑定 如果您只想读取该数据 可以
  • 在 C++ 中处理音频缓冲区时,如何执行从 float -> double -> float 的转换

    我目前正在开发一个应用程序 其中音频样本帧在以下回调中进行处理 void Eav07AudioProcessor processBlock AudioSampleBuffer buffer for int channel 0 channel
  • IClaimsTransformation 未触发

    我尝试过实施一个IClaimsTransformation我在 ASP NET CORE 3 1 Web 应用程序中找到的类 public class ClaimsTransformer IClaimsTransformation publ
  • 使用对象列表构建树

    我有一个带有属性 id 和parent id 的对象列表 我想建造一棵树来连接那些孩子和父母 1 个父对象可以有多个子对象 并且有一个对象将成为所有对象的祖先 实现该功能最快的算法是什么 我使用 C 作为编程语言 但其他语言也可以 像这样的
  • 为什么在 .net 中使用 Invoke on Controls? [复制]

    这个问题在这里已经有答案了 可能的重复 为什么 NET不允许跨线程操作 https stackoverflow com questions 2896504 why net does not allow cross thread operat
  • 在 C# 中生成随机值

    如何使用以下命令生成随机 Int64 和 UInt64 值RandomC 中的类 这应该可以解决问题 这是一个扩展方法 因此您可以像调用普通方法一样调用它Next or NextDouble上的方法Random目的 public stati
  • ASP.NET Web API Swagger(Swashbuckle)重复OperationId

    I have a web api controller like below In swagger output I am having the below image And when I want to consume it in my
  • IEnumerable.比带中断的 for 循环更快吗?

    我们的代码打开表单时遇到了一些缓慢的情况 这可能是由于for循环与break这需要很长时间才能执行 我把它切换到IEnumerable Any 并看到表格很快打开 我现在试图弄清楚是否单独进行此更改会提高性能 或者是否正在访问Product
  • .NET 的 HttpWebResponse 是否会自动解压缩 GZiped 和 Deflated 响应?

    我正在尝试执行一个接受压缩响应的请求 var request HttpWebRequest HttpWebRequest Create requestUri request Headers Add HttpRequestHeader Acc
  • 如果数组为空,LINQ 返回 null

    public class Stuff public int x other stuff 我有一个IEnumerable
  • fscanf 和 EOF 中的否定扫描集

    我的文件中有一个以逗号分隔的字符串列表 姓名 1 姓名 2 姓名 3 我想跳过所有逗号来阅读这些名字 我写了以下循环 while true if fscanf file my string 1 break 然而 它总是比预期多执行一次 给定
  • 检索 Autofac 容器以解析服务

    在 C WindowForms 应用程序中 我启动一个 OWIN WebApp 它创建另一个类 Erp 的单例实例 public partial class Engine Form const string url http 8080 49
  • 获取大于某个数字的元素个数

    我正在尝试解决以下问题 数字被插入到容器中 每次插入数字时 我需要知道容器中有多少元素大于或等于当前插入的数字 我相信这两个操作都可以以对数复杂度完成 我的问题 C 库中有标准容器可以解决这个问题吗 我知道std multiset可以在对数
  • 无效的模板相关成员函数模板推导 - 认为我正在尝试使用 std::set

    我有一个继承自基类模板的类模板 基类模板有一个数据成员和一个成员函数模板 我想从我的超类中调用它 我知道为了消除对成员函数模板的调用的歧义 我必须使用template关键字 我必须明确引用this在超级班里 this gt base mem
  • 计算两个日期之间的工作日数?

    在C 中 如何计算business 或工作日 两个日期之间的天数 我以前曾经遇到过这样的任务 并且我已经找到了解决方案 当可以避免的时候 我会避免列举其间的所有日子 这里就是这种情况 正如我在上面的一个答案中看到的那样 我什至没有提到创建一

随机推荐

  • WPF 多显示器问题 - WindowState

    一段时间以来 我一直在尝试让我的 WPF 应用程序跨多个显示器 并且几乎可以正常工作 当我设置以下行时似乎出现了问题 win1 WindowState WindowState Maximized 这会导致应用程序仅跨越主屏幕 我的代码如下
  • 中断处理和用户空间通知

    我有几个分配给 gpios 的已注册中断以及用户空间中的应用程序 如何通知应用程序发生了中断以及发生了哪个中断 fasync 可能适用于这个目标 但我可以找到如何将信息从中断处理程序发送到用户空间应用程序的示例 如果您能提供一些有用的示例
  • 在 Android 中使用 Facebook SDK 共享文本和图像

    我正在使用 facebook SDK 在 Android 中共享文本和图像 我使用了以下代码及其用于共享文本的工作 但如何一起共享图像 我对此很困惑 如果有人知道 请建议我 Code public class MainActivity ex
  • CSS、HTML Web 浏览器无效标记容差

    我刚刚在 Safari 中打开一个网页 我看到了什么 整个文字都是绿色的 但我只将标题设为绿色 所以常规文本应该是黑色的 然后我想 好吧 我在 Firefox 中编写了这个网站 起初我认为 Safari 的解释很糟糕 但我再次检查了我的代码
  • DocusignrecipientId 字段的格式是什么?

    使用 Docusign API 时 有一个名为recipientId 我找不到任何解释 API 接受该字段的数据格式的文档 一条评论表明它是一个整数 但实际上 Guid 字符串偶尔会起作用 有谁知道该字段可以接受什么数据类型 或者知道详细说
  • Magento:在结账时保存自定义地址属性

    这就是我在我的网站中所做的 管理 gt 客户 gt 属性 gt 管理客户地址属性并添加新属性 用户可以在他 她的个人资料中看到它 在我的地址选项下 可以编辑新属性并在创建新地址时保存 我也可以在后端看到它并进行编辑 直到这里一切正常 我的问
  • 在当前网页视图中打开弹出/外部站点链接

    我目前正在编写一个网络视图 它首先加载一个 Twitter 页面 比如说 国家冰球联盟 http twitter com nhl 如您所见 您可以找到 NHL 的推文 并且每条 NHL 推文都有 供用户点击的另一个链接 例如bit ly u
  • Visual Studio 2015、Microsoft Fakes 和 System.Security.Claims.Claim

    我在 NET 4 5 不是 4 6 类库中有一个接口 public interface IBrokenFakeInterface Claim WhyWontItGenerateFakeOfThisInterface 在我的单元测试项目 MS
  • 如何在 iOS 下使用设备上的 CoreAudio 以编程方式创建一定长度的空 .m4a 文件?

    我需要在 iOS 下以编程方式创建一个特定长度的虚拟 m4a 文件 try this NSError error nil path path stringByAppendingPathComponent tempfile NSURL URL
  • Jackson ObjectMapper - 未映射带有“_”的属性

    我在以下情况下使用 ObjectMapper 但是 Person 类有一个 JSON 属性 last name 当 name 属性正确映射时 该属性似乎没有被映射 我在下面包含了我的 Person 类 任何可能发生这种情况的原因都值得赞赏
  • 如何使用nutch解析html并将特定标签索引到solr?

    我已经安装了 nutch 和 solr 来抓取网站并在其中进行搜索 如您所知 我们可以使用nutch的解析元标记插件将网页的元标记索引到solr中 http wiki apache org nutch IndexMetatags 现在我想知
  • Java RegEx - 用开始和结束分割段落的正则表达式

    我是 java 正则表达式新手 请帮助我 考虑下面的段落 段落 Name abc sadghsagh hsajdjah Name ggggggggg Name ggg dfdfddfdf Name Name hhhh sahdgashdg
  • 使用纯 CSS 单击时进行 CSS3 转换

    我正在尝试将图像 加号 旋转 45 度以创建十字符号 到目前为止 我已经成功地使用下面的代码实现了这一点 但它在悬停时工作 我想让它在单击时旋转 有没有一种简单的方法可以做到这一点使用CSS 我的代码是 CSS img display bl
  • jQuery - 根据条件禁用和启用锚标记

    在页面加载时 我正在检查一个人是否已注册 如果他是 我将启用链接 否则禁用该链接 我尝试了以下方法 但它不起作用 var status status if status Registered addlink data disabled el
  • 使用 capture.get(CV_CAP_PROP_FPS) 时 OpenCV 报告 TBR 而不是 FPS

    我尝试在 Mac OS 10 6 8 Snow Leopard 上使用 OpenCV 和 Qt 4 7 4 处理几个视频 如果我创建一个cv VideoCapture对象 然后查询与此类视频相关的帧速率 我得到的是 TBR 而不是 FPS
  • 通过require在不同的Lua状态之间共享全局变量

    我正在尝试找到一种方法来共享特定Lua脚本的全局变量 test lua在示例中 不同 Lua 状态之间 这是我的简单示例代码 In test lua num 2 In main cpp include
  • c函数参数评估和传递[重复]

    这个问题在这里已经有答案了 我有一个很小的代码 但我不明白为什么输出是这样的 这里是 include
  • 如何在 jQuery 动画中连续旋转子元素?

    我有一个类为 bannergroup 的 div 其中包含多个 div banneritem 我希望这些项目能够相互旋转 淡入然后淡出 我可以在类横幅组中放置多个 div 并且每个 div 都应单独旋转 这是 HTML div class
  • 如何用数组编组哈希?

    我应该做什么编组数组的哈希值 以下代码仅打印 s Hash new s default Array new s 0 lt lt Tigger s 7 lt lt Ruth s 7 lt lt Puuh data Marshal dump s
  • range-v3 如何操作::使用分隔符连接

    我从 git 获取 MSVC 的 range v3 并通过MSVC C 14编译器进行编译 考虑代码 auto getter2 const std string r return r r std vector