以静态大小的数组作为参数的通用 lambda

2023-12-20

以下通用(多态)lambda 是否合法 C++14?

auto f = [](auto x[3]) {
    x[0];
    x[1];
    // etc.
};

GCC 和 Clang 4 接受该代码,但 Visual Studio 2017 不接受。合法吗?

error C3318: 'auto [3]': an array cannot have an element type that contains 'auto'

这是非法的。

[dcl.数组]/1 http://eel.is/c++draft/dcl.array#1.sentence-1,强调我的:

在声明 T D 中,其中 D 的形式为


D1 [ constant-expressionopt ] attribute-specifier-seqopt  

以及声明中标识符的类型T D1 is “派生声明符类型列表 T”,那么标识符的类型D是数组类型;如果标识符的类型D包含auto 类型说明符,该程序格式错误。

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

以静态大小的数组作为参数的通用 lambda 的相关文章

  • 如何获取正在访问 ASP.NET 应用程序的当前用户?

    为了获取系统中当前登录的用户 我使用以下代码 string opl System Security Principal WindowsIdentity GetCurrent Name ToString 我正在开发一个 ASP NET 应用程
  • EF Core Group By 翻译支持条件总和

    听说 EF Core 2 1 将支持翻译小组 我感到非常兴奋 我下载了预览版并开始测试它 但发现我在很多地方仍然没有得到翻译分组 在下面的代码片段中 对 TotalFlagCases 的查询将阻止翻译分组工作 无论如何 我可以重写这个以便我
  • C 编程 - 文件 - fwrite

    我有一个关于编程和文件的问题 while current NULL if current gt Id Doctor 0 current current gt next id doc current gt Id Doctor if curre
  • “构建”构建我的项目,“构建解决方案”则不构建

    我刚刚开始使用VS2010 我有一个较大的解决方案 已从 VS2008 成功迁移 我已将一个名为 Test 的控制台应用程序项目添加到解决方案中 选择构建 gt 构建解决方案不编译新项目 选择构建 gt 构建测试确实构建了项目 在失败的情况
  • 为什么 C# Array.BinarySearch 这么快?

    我已经实施了一个很简单用于在整数数组中查找整数的 C 中的 binarySearch 实现 二分查找 static int binarySearch int arr int i int low 0 high arr Length 1 mid
  • 在结构中使用 typedef 枚举并避免类型混合警告

    我正在使用 C99 我的编译器是 IAR Embedded workbench 但我认为这个问题对于其他一些编译器也有效 我有一个 typedef 枚举 其中包含一些项目 并且我向该新类型的结构添加了一个元素 typedef enum fo
  • 秒表有最长运行时间吗?

    多久可以Stopwatch在 NET 中运行 如果达到该限制 它会回绕到负数还是从 0 重新开始 Stopwatch Elapsed返回一个TimeSpan From MSDN https learn microsoft com en us
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • 嵌套接口:将 IDictionary> 转换为 IDictionary>?

    我认为投射一个相当简单IDictionary
  • 使用实体框架模型输入安全密钥

    这是我今天的完美想法 Entity Framework 中的强类型 ID 动机 比较 ModelTypeA ID 和 ModelTypeB ID 总是 至少几乎 错误 为什么编译时不处理它 如果您使用每个请求示例 DbContext 那么很
  • Clang 3.1 + libc++ 编译错误

    我已经构建并安装了 在前缀下 alt LLVM Clang trunk 2012 年 4 月 23 日 在 Ubuntu 12 04 上成功使用 GCC 4 6 然后使用此 Clang 构建的 libc 当我想使用它时我必须同时提供 lc
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • 创建链表而不将节点声明为指针

    我已经在谷歌和一些教科书上搜索了很长一段时间 我似乎无法理解为什么在构建链表时 节点需要是指针 例如 如果我有一个节点定义为 typedef struct Node int value struct Node next Node 为什么为了
  • WCF 中 SOAP 消息的数字签名

    我在 4 0 中有一个 WCF 服务 我需要向 SOAP 响应添加数字签名 我不太确定实际上应该如何完成 我相信响应应该类似于下面的链接中显示的内容 https spaces internet2 edu display ISWG Signe
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 这些作业之间是否存在顺序点?

    以下代码中的两个赋值之间是否存在序列点 f f x 1 1 x 2 不 没有 在这种情况下 标准确实是含糊不清的 如果你想确认这一点 gcc 有这个非常酷的选项 Wsequence point在这种情况下 它会警告您该操作可能未定义
  • WPF/C# 将自定义对象列表数据绑定到列表框?

    我在将自定义对象列表的数据绑定到ListBox in WPF 这是自定义对象 public class FileItem public string Name get set public string Path get set 这是列表
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new

随机推荐

  • FluentAssertions,确保 IEnumerable 仅包含单个元素

    我正在编写单元测试 我有一些看起来像这样的东西 Fact public void GetFoos only gets foo1 foo1 included true Foo object foo2 included false Foo ob
  • 不使用加载数据命令填充数据库

    如何填充数据 csv文件 导入 MySql Windows 5 1 而不使用加载数据命令 他们是否试图让您学习脚本语言 如果是的话 Python 怎么样 我刚刚测试了以下代码是否满足您的要求 请注意 您需要下载第 3 方 MySQLdb 模
  • 将新规则文件添加到现有知识会话

    我想向现有的规则文件添加一个新的规则文件 或修改现有的规则文件 KieSession在运行时动态地 我找到了一个answer https stackoverflow com a 22208775 1925388关于这一点并尝试了那里提到的解
  • 无法启动 AVD [重复]

    这个问题在这里已经有答案了 我看过很多关于此的问题和答案 但找不到适合我的答案 我无法创建或启动任何设备 您需要下载并安装适合该 API 级别的映像 请注意 CPU ABI 字段呈灰色 这准确地说明了您需要做什么 只需打开 SDK 管理器
  • 如何在 macOS 应用程序中使用 Swift 监听全局热键?

    我试图在我的 Mac OS X 应用程序中使用 Swift 编写一个处理程序 用于全局 系统范围 热键组合 但我找不到合适的文档 我读过 我必须在一些遗留的 Carbon API 中搞乱它 有没有更好的方法 您能给我展示一些概念验证 Swi
  • Python记录器格式化不是格式化字符串

    以下为内容mylogger py def get logger name my super logger log logging getLogger name log setLevel logging DEBUG formatter log
  • 需要澄清 Swift 中的类型转换运算符

    为什么在此 switch 语句中使用类型转换运算符 as 而不是其条件形式 as 我认为类型运算符只能是 as 或 as Apple Swift 文档没有对此提供足够的解释 这是 Swift 文档中的示例 var things Any th
  • 包含 Typescript 中类型值的所有选项的数组

    这是强制所有类型选项出现在键中的代码object 并且不允许使用其他键 type Fruit apple peach const objectWithAllFruitsAsKeys key in Fruit any apple peach
  • 用于从 C++ 代码生成 UML 图的 Eclipse 插件

    有没有可以从 C 源代码生成 UML 类图的 eclipse 插件 这也不是 Eclipse 插件 而是Umbrello UML 建模器 http uml sourceforge net index php来自 KDE 的软件是开源的 我使
  • jQuery 缓存 $(this) 有意义吗?

    我仍在学习 jQuery 但我还没有找到可靠的答案 我知道你每次使用 jQuery 选择器时 有性能成本 但确实 this 在大量使用之前应该缓存它会产生很大的成本吗 var this this 如果你经常使用它 是的 它是有意义的 或者是
  • 无法从 PKCS8 获取私钥

    无法从自行生成的 PKCS8 获取私钥 我已经生成了私钥 KeyPair pair getKeyPair StringWriter privateWriter new StringWriter try JcaPEMWriter w new
  • QTextDocument:获取特定页面的内容

    Given a QTextDocument具有特定的宽度和高度 有没有办法在给定页码的情况下获取给定页面的内容 如果页面上有图像 则为纯文本 图像 URL 这是我想要实现的目标的示例 QString getTextForPage int p
  • Android Gradle 5.0 更新:原因:org.jetbrains.plugins.gradle.tooling.util

    关于更新我的项目版本gradle到 5 0 版本时 我在 android studio 中遇到错误 它运行良好gradle 5 0 rc 3 and 4发布 以下是错误详细信息 原因 org jetbrains plugins gradle
  • 寻找一种在 PropertyGrid 中动态更改字段名称的方法

    我已将 COM 对象附加到属性网格 Type typeObj Type GetTypeFromProgID progIdService var obj Activator CreateInstance typeObj propertyGri
  • 如何在 Vuetify 中添加新节点

    我目前正在使用 Vuetify 制作树视图 树视图使用以下结构 items id 1 name Applications children id 2 name Calendar app id 3 name Chrome app id 4 n
  • 如何在 Linux 中分析 pthread 互斥体?

    我想知道如何分析 pthread 互斥体以查看我的代码中是否存在任何锁定争用点 谁喜欢有争议的代码 对吧 正如我提到的 我知道如何对代码进行更一般的分析here https stackoverflow com a 10800412 1158
  • 将数字转换为单词 C# [重复]

    这个问题在这里已经有答案了 可能的重复 如何将整数转换为其语言表示形式 https stackoverflow com questions 554314 how can i convert an integer into its verba
  • 如何在角度材料中启用和禁用滑动切换

    我已经使用 for 循环生成了垫子滑动切换列表 但想要的是 当我单击一个滑动切换时 其他滑动切换应该被禁用 my code HTML div class row div class col md 6 mt 2 div div
  • Wpf 数据网格问题

    要重现此问题 请添加用户控件 粘贴下面的 xaml 然后将实例添加到窗口 最后将窗口的数据上下文设置为 ADummyDataContext 的实例 也在下面 当您第一次运行该应用程序时 您应该得到一个包含三个类别的网格 每个类别包含一只猫
  • 以静态大小的数组作为参数的通用 lambda

    以下通用 多态 lambda 是否合法 C 14 auto f auto x 3 x 0 x 1 etc GCC 和 Clang 4 接受该代码 但 Visual Studio 2017 不接受 合法吗 error C3318 auto 3