可以重载花括号吗?

2024-03-10

我几乎可以肯定不是,但我没有找到明确的答案:

是否可以重载花括号?如:

class Foo
{
    int i;
    public:
    int operator{}(int _i){return _i+42;};    
};

int main()
{
    Foo f;
    f{2};
    return 0;
}

它从未被提及,无论是允许的还是不允许的。 gcc 4.6 不编译它,但这并不意味着标准不允许它,对吧?


在 C++ 中花括号{}不是运营商,不像[](数组下标运算符)或()(函数调用运算符),因此它们不能重载。

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

可以重载花括号吗? 的相关文章

  • 未提供参数时如何指定 C# System.Commandline 行为?

    在我的控制台应用程序中 当未提供控制台参数时 将执行我指定列表 在本例中为参数 3 的任何处理程序 调用该处理程序时 布尔参数设置为 false 但对我来说 根本不调用它更有意义 如何防止这种情况发生并显示帮助文本 using System
  • 如何在 .NET Framework 2.0 中模拟“Func<(Of <(TResult>)>) 委托”?

    我尝试使用这个类代码项目文章 http www codeproject com KB threads AsyncVar aspx在 VB NET 和 NET Framework 2 0 中 除了这一行之外 所有内容似乎都可以编译Privat
  • 确保 StreamReader 不会挂起等待数据

    下面的代码读取从 tcp 客户端流读取的所有内容 并且在下一次迭代中它将仅位于 Read 上 我假设正在等待数据 我如何确保它不会在没有任何内容可供读取时返回 我是否必须设置低超时 并在失败时响应异常 或者有更好的办法吗 TcpClient
  • 复制 std::function 的成本有多高?

    While std function是可移动的 但在某些情况下不可能或不方便 复制它会受到重大处罚吗 它是否可能取决于捕获变量的大小 如果它是使用 lambda 表达式创建的 它依赖于实现吗 std function通常被实现为值语义 小缓
  • 使用 LINQ2SQL 在 ASP.NET MVC 中的各种模型存储库之间共享数据上下文

    我的应用程序中有 2 个存储库 每个存储库都有自己的数据上下文对象 最终结果是我尝试将从一个存储库检索到的对象附加到从另一个存储库检索到的对象 这会导致异常 Use 构造函数注入将 DataContext 注入每个存储库 public cl
  • 使用接口有什么好处?

    使用接口有什么用 我听说它用来代替多重继承 并且还可以用它来完成数据隐藏 还有其他优点吗 哪些地方使用了接口 程序员如何识别需要该接口 有什么区别explicit interface implementation and implicit
  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • qdbusxml2cpp 未知类型

    在使用 qdbusxml2cpp 程序将以下 xml 转换为 Qt 类时 我收到此错误 qdbusxml2cpp c ObjectManager a ObjectManager ObjectManager cpp xml object ma
  • 我可以使用 moq Mock 来模拟类而不是接口吗?

    正在经历https github com Moq moq4 wiki Quickstart https github com Moq moq4 wiki Quickstart 我看到它 Mock 一个接口 我的遗留代码中有一个没有接口的类
  • 如何检测表单的任何控件的变化?

    如何检测 C 中表单的任何控件的更改 由于我在一个表单上有许多控件 并且如果表单中的任何控件值发生更改 我需要禁用按钮 我正在寻找一些内置函数 事件处理程序 属性 并且不想为此创建自定义函数 不 我不知道任何时候都会触发任何事件any控制表
  • Qt - ubuntu中的串口名称

    我在 Ubuntu 上查找串行端口名称时遇到问题 如您所知 为了在 Windows 上读取串口 我们可以使用以下代码 serial gt setPortName com3 但是当我在 Ubuntu 上编译这段代码时 我无法使用这段代码 se
  • C# HashSet 只读解决方法

    这是示例代码 static class Store private static List
  • 等待进程释放文件

    我如何等待文件空闲以便ss Save 可以用新的覆盖它吗 如果我紧密地运行两次 左右 我会得到一个generic GDI error
  • AES 128 CBC 蒙特卡罗测试

    我正在 AES 128 CBC 上执行 MCT 如中所述http csrc nist gov groups STM cavp documents aes AESAVS pdf http csrc nist gov groups STM ca
  • 为什么 gcc 抱怨“错误:模板参数 '0' 的类型 'intT' 取决于模板参数”?

    我的编译器是gcc 4 9 0 以下代码无法编译 template
  • C++ 函数重载类似转换

    我收到一个错误 指出两个重载具有相似的转换 我尝试了太多的事情 但没有任何帮助 这是那段代码 CString GetInput int numberOfInput BOOL clearBuffer FALSE UINT timeout IN
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • C++ 条件编译

    我有以下代码片段 ifdef DO LOG define log p record p else define log p endif void record char data 现在如果我打电话log hello world 在我的代码中
  • WebSocket安全连接自签名证书

    目标是一个与用户电脑上安装的 C 应用程序交换信息的 Web 应用程序 客户端应用程序是 websocket 服务器 浏览器是 websocket 客户端 最后 用户浏览器中的 websocket 客户端通过 Angular 持久创建 并且
  • 从列表中选择项目以求和

    我有一个包含数值的项目列表 我需要使用这些项目求和 我需要你的帮助来构建这样的算法 下面是一个用 C 编写的示例 描述了我的问题 int sum 21 List

随机推荐

  • Type.GetType(string) 应该了解动态生成的类型吗?

    我有一个使用 CodeDom 编译器创建一些代码的应用程序 我可以看到生成的程序集在内存中 但是当我调用 Type GetType typeName 时 它返回 null 我觉得这有点令人困惑 我究竟做错了什么 static void Ma
  • 如何检测 iPhone 正面朝上放在桌子上时是否正在旋转?

    有没有办法检测面朝上放在桌子上的 iPhone 是否正在旋转 我确实意识到这种运动不会由加速度计报告 也不会报告给 BOOL shouldAutorotateToInterfaceOrientation UIInterfaceOrienta
  • 将已发送的彩信插入发送箱

    我正在尝试将彩信插入发送的数据库中 但可惜我无法在本机 Android 应用程序中查看它 我的插入代码 ContentValues values new ContentValues values put thread id thread i
  • 如何验证日历中的日期

    我已尝试使用以下代码 我已遵循示例 来测试从日历中选择的日期 如果我的数据库中不存在该日期 则应向最终用户显示验证错误消息 然而 错误并没有以
  • iOS 3 SDK 中 [NSBundle mainBundle] URLForResource:withExtension: 的替代方案是什么

    我正在使用 iOS 4 2 SDK 开发一个 iOS 应用程序 但我希望该应用程序能够在旧设备上运行 例如装有 iOS 3 1 3 的 iPhone 2G 我不知道这段代码的替代方案是什么 NSURL modelURL NSBundle m
  • 如何在 Azure 计算模拟器上配置 Web 角色以像本地 IIS(静态 URL)一样工作

    那么 问题是如何在 Azure 计算模拟器上配置 Web 角色 使其像在本地 IIS 上一样工作 我的意思是 Web 角色具有固定 url 就像您可以在项目属性中设置 使用本地 IIS Web 服务器 并设置固定 url 一样 如何将 Az
  • javascript:将参数传递给对象构造函数

    我正在编写一个jquery lib 我需要实现日期时间函数 我需要创建一个 Date 函数 它返回一个新的 Date 对象 如何将 Date args 函数的参数传递给 Date 对象构造函数以创建新的日期对象 我尝试了这样的方法 me是插
  • 导入不带 .py 扩展名的 python 模块,[重复]

    这个问题在这里已经有答案了 我同意有类似的问题 但没有一个符合我的目的 我有一个 python 脚本 没有 py 扩展名 我既不能更改文件名也不能添加符号链接 文件名很重要 我需要将上述文件导入到另一个python脚本中 我尝试过以下方法
  • ActionSheet 的工具栏问题

    我有以下示例代码 import SwiftUI struct ContentView View var body some View NavigationView NavigationLink destination DetailViewT
  • Oracle 存储过程中记录错误消息

    我们计划使用 Oracle DBMS 调度程序包将存储过程配置为每天作为批处理作业运行 我们想知道发生错误时记录错误消息的最佳方法是什么 是否可以选择记录到临时表 或者有更好的选择 提前致谢 登录临时表可能是一个很好的解决方案 例如 您可以
  • 为什么我的 MVC 项目发布后无法运行?

    我最近将我的第一个 MVC 2 项目发布到运行 Windows 2008 的商业 Web 服务器 据称该项目可以毫无问题地支持其他 MVC 站点 但遇到了一些问题 这是该项目的高级结构 正如您所看到的 这非常简单 但是 在发布站点并导航到
  • 我是 .NET 新手 - 我应该关注什么,应该忽略什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 因此 我在使用 php 和 Coldfusion 编程数据库驱动的 Web 应用程序方面拥有相当多的经验 不是在一起 在不同的时间 并且我开始研
  • 可以强制执行类型提示吗?

    在 python 中使用 类型提示 表示法有什么好处吗 import sys def parse arg line int gt str print arg line passing a string returning None if n
  • 如何重新启动 Hibernate 处理的 PostgreSQL 序列?

    我的任务是重新启动 PostgreSQL 数据库中许多不同序列列的序列 通常 我会简单地使用 ALTER SEQUENCE serial RESTART WITH 105 然而 Hibernate 似乎被用来处理数据库序列 我真的对Hibe
  • 持久化和刷新 - Doctrine 和 MongoDB

    冲洗 有多快 我使用 persist 将数千个项目添加到集合中 然后清空集合 然后刷新它 dm this gt get doctrine odm mongodb document manager while stuff item new I
  • Mockito:是否可以将mock与方法名称结合起来在when()调用中创建methodCall?

    我在 StackOverflow 上的第一个问题 我希望能够做类似的事情 SomeClass 模拟 模拟 SomeClass class String 方法名 someMethod 或 方法 方法 someMethod 这两件事 模拟和方法
  • 如何在 Android NDK 中使用 Asio(独立于 Boost)?

    Asio 没有 Boost 应该只使用标题就可以使用 对吗 默认情况下 Asio 是一个仅包含头文件的库 http think async com http think async com 我知道Asio内部仍然依赖Boost 这是我的设置
  • 模块与包 Android Studio

    我对 Android Studio 和 Java 非常陌生 我正在开发一个应用程序 该应用程序基本上遵循分层架构 具有不同的层 例如 UI 数据访问层 服务层等 我不清楚包和模块之间的区别 我的问题是 将所有这些不同的层放在模块或包中的哪里
  • 在 React 中将状态从一个组件设置为另一个组件的最佳实践方法

    我从最佳实践的角度提出这个问题 我在这里找到的答案是关于单个代码库的更具体的问题 如果已经得到答案 我很高兴能被指出正确的方向 或者如果我正在尝试的内容不被认为是良好的做法 我很高兴能以另一种方式显示 我可能误解了一些概念 我正在学习 Re
  • 可以重载花括号吗?

    我几乎可以肯定不是 但我没有找到明确的答案 是否可以重载花括号 如 class Foo int i public int operator int i return i 42 int main Foo f f 2 return 0 它从未被