不允许使用默认特殊成员函数的多个版本 (MSVC)

2024-04-15

这是有效的 C++ 代码吗:

struct S
{
    S(S const&) = default;
    S(S&) = default;
};

?

Context:

我尝试通过将这两行添加到以下代码中来处理歧义S (godbolt https://godbolt.org/z/j9znrY6ef):

#include <utility>


struct Inner
{
    Inner(int);
};

struct Outer
{
    //Outer(Outer const&) = default;
    //Outer(Outer&) = default;

    template<class T>
    Outer(T&& inner) : inner_(std::forward<T>(inner)) {}

    Inner inner_;
};

auto foo()
{
    auto v1 = Outer(1);
    Outer v2 = v1;
    return v2.inner_;
}

取消注释两行S让 GCC 高兴,但 MSVC 产生错误 C2580。问题是——MSVC 正确与否?

上面的错误S is:

<source>(8): error C2580: 'S::S(S &)': multiple versions of a defaulted special member functions are not allowed

None

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

不允许使用默认特殊成员函数的多个版本 (MSVC) 的相关文章

随机推荐

  • 使用数字属性的 MVC3 DataAnnotationsExtensions 错误

    我已经安装了 Scott 的 Kirkland DataAnnotationsExtensions 在我的模型中我有 Numeric public double expectedcost get set 在我看来 Html EditorFo
  • 根据磁盘可用空间获取节点IP

    我正在尝试编写一个 Ansible 剧本来检查多个服务器上的磁盘空间 到目前为止 这是我的 Ansible 剧本 hosts all become yes tasks name Check freespace shell df h awk
  • 在第二次编辑后刷新表单[重复]

    这个问题在这里已经有答案了 嘿大家好 我目前正在尝试在更改完成后立即刷新表单 在我的第一个表单上 我按下 创建 按钮 这将打开另一个表单 form2 第二个表单将具有输入字段 并允许您输入填充第一个表单上的组合框的值 在第二个表单上有一个
  • 标题消息就像 Stack Overflow 中一样

    这是我第一次访问堆栈溢出 我看到了一条漂亮的标题消息 其中显示了文本和关闭按钮 标题栏是固定的 非常能吸引访问者的注意力 我想知道你们中是否有人知道获得相同类型标题栏的代码 快速的纯 JavaScript 实现 function Messa
  • openui5:如何在 RowRepeater 中获取当前 JSON 模型元素

    我无法获取绑定到 RowRepeater 元素的当前 JSON 模型元素 对于表和列表 我只需检索当前索引 或多个索引 并根据这些值 指向 JSON 模型中的匹配元素 但是 RowRepeater 元素没有当前索引属性 我觉得我应该能够直接
  • 主题消息可以在activemq中持久化吗?

    我对 JMS 和 ESB 非常陌生 我使用 activemq 作为 JMS 使用 mule 作为 ESB 当我将消息从一个队列转发到另一个队列时 jms 连接器参数 persistentDelivery 为 true 它会在 activem
  • 将部分 Activity/Fragment 保存为图像

    我试图保存我的活动的一部分 没有工具栏和状态栏 我现在拥有的代码可以保存整个屏幕 请参考下图 我现在拥有的代码 llIDCardRootView LinearLayout view findViewById R id ll id card
  • Laravel psr-4 不自动加载

    我有一个在本地运行良好的 Laravel 项目 Mavericks 但 psr 4 下的类未加载到我们的阶段服务器 CentOS 上 每次尝试作曲家更新或运行 artisan 命令时 我都会收到反射 未找到类 错误 我所有的应用程序特定类都
  • 无法将 IBOutlet 连接到 Storyboard

    我最近开始使用故事板为我的 iPad 应用程序创建 iPhone 界面 我已将项目更改为 Universal 而不是 iPad 并在项目摘要屏幕中将所需的故事板分配给其设备 但是当我尝试使用 control drag 将任何元素连接到一段代
  • 如何以编程方式激活“在高 dpi 设置上禁用显示缩放”[重复]

    这个问题在这里已经有答案了 我正在 Visual Studio 2010 上使用 C 开发 Windows 窗体应用程序 我发现如果我使用高 dpi 显示设置 该应用程序会缩放 但是 如果我通过 Windows 资源管理器上的鼠标右键单击菜
  • 在 Visual Studio 2017 中出现未处理的异常后启用编辑

    在 Visual Studio 2017 中出现未处理的异常后如何继续执行 在 2015 及以下版本中 可以通过单击轻松完成此操作Enable Editing它 将调用堆栈展开到异常之前的点 然后就可以编辑执行点 变量和代码 当库抛出异常时
  • 如何使用“here-doc”将行打印到文件?

    基本上 这是我在过去半小时内编程和使用 Google 的结果 试图实现一个简单的事情 从以下位置获取用户输入 STDIN并将它们写入结构化 XML 文件作为输出 下面是我丑陋的代码 bin perl print img URL img lt
  • Akka 流如何不断实现?

    我在用阿卡流 http doc akka io docs akka stream and http experimental 1 0 scala stream index html在 Scala 中进行轮询AWS SQS https aws
  • 在 databrick 上运行时将 PySpark 标准输出和标准错误日志保存到云对象存储

    我正在标准 databricks 集群上运行 PySpark 数据管道代码 我需要保存所有 Python PySpark 标准输出和标准错误消息存储到 Azure BLOB 帐户中的文件中 当我在本地运行 Python 代码时 我可以在终端
  • 如何重新分发使用 Crystal Reports 的 VB 6 应用程序?

    假设目标系统有 Crystal Reports for Visual Studio 2008 我如何将可执行的 VB 6 应用程序与报告文件一起分发 仅移动可执行文件和报告文件是行不通的 我想知道如何创建可再发行包 我们使用CR10 我的建
  • 优化子查询选择每组最后一条记录

    我有这个查询 它是一个依赖查询并且需要很多执行时间 SELECT u id u user name ifnull select longitude from map where user id u id order by map id de
  • Django QuerySet 不返回任何内容

    我有一个国家 地区列表 例如 它们都有自己的网址 www example com al 每个国家 地区都有一个城市列表 但 object list 为空 My View class CityOverview generic ListView
  • 如何使嵌入式视图控制器成为响应者链的一部分?

    我正在使用情节提要开发 Mac 应用程序 我有一个窗口显示NSViewController作为其内容 其中包含一个 容器视图控制器 其中嵌入了NSSplitViewController 预期的行为是NSSplitViewController
  • 无法使用 sqldf 对 R 中的函数使用rank()

    arm lt as data frame matrix c 1 1 1 2 2 6 7 4 9 10 ncol 2 colnames arm lt c a b 这是我在 R 中创建的数据集 现在我想对 b 列进行排名并按 a 列进行分组 无
  • 不允许使用默认特殊成员函数的多个版本 (MSVC)

    这是有效的 C 代码吗 struct S S S const default S S default Context 我尝试通过将这两行添加到以下代码中来处理歧义S godbolt https godbolt org z j9znrY6ef