返回内置类型的常量值[重复]

2024-03-03

为内置类型返回 const 值是一个好的习惯吗?

原因是:

const int F()
{
}

int y;
F(x) = y;

如果返回值是const,上面的代码将无法编译。然而 如果不是的话F(x) = y;是一个非常隐蔽的错误。

由于为函数赋值没有意义,我在想 始终为内置类型返回 const 值是一个好习惯吗? 如果我总是为内置类型返回 const 值,有什么问题吗?


const意味着在对象的生命周期内,该对象的值不会改变。

标准本身指出,因此,const 对于非类或非数组纯右值没有意义。此类表达式从不引用对象(至少如果表达式源自用户代码。语言本身可能会在引用绑定期间创建纯右值,它神奇地引用临时对象。但恕我直言,这些应该是xvalues)。因此,既然没有对象,就没有生命周期。因此,没有什么可以被认为是“const”的。

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

返回内置类型的常量值[重复] 的相关文章

随机推荐

  • Scala 中 :: 和 ::: 有什么区别

    val list1 List 1 2 val list2 List 3 4 then list1 list2 returns List Any List List 1 2 3 4 list1 list2 returns List Int L
  • 打印 python 列表,逗号后不带引号或空格[重复]

    这个问题在这里已经有答案了 现在我有一个文件名列表 我想打印它们 逗号后不带空格 也不带引号 所以基本上我有一个具有以下输出的文件 1 2 3 我希望输出是 1 2 3 Use the join method gt gt gt your l
  • 滚动侦听器 - 向下滚动的第一个 distanceY 始终为负?

    我有一个 GestureDetector OnGestureListener 连接到 ListView 我试图在用户向下滚动时监听滚动事件 private GestureDetector OnGestureListener mOnGestu
  • 无法从 Crashlytics 找到 UUID 的 dsym 文件

    请帮助我找到 Crashlytics 提示给定 UUID 缺少 dSYM 的问题 我已搜索了所有 dSYM 文件 但未找到给定的 UUID 我用过这个命令 mdfind com apple xcode dsym uuids lt gt 从
  • dplyr 对向量而不是 R 中的数据帧进行过滤

    这似乎是一个简单的问题 但我还没有找到一个干净的解决方案 我在 R 中有一个向量 我想从向量中删除某些元素 但是出于多种原因我想避免使用向量 向量 thiselement 表示法 特别是 这就是我正在尝试做的事情 this doesnt w
  • 主干视图的窗口调整大小事件

    我在 javascript 中使用 Backbone 视图 我创建了一个主干视图 如下所示 var MaskView Backbone View extend className dropdown mask initialize funct
  • 保留/切片 pandas 中的特定列

    我知道这些列切片方法 df2 df col1 col2 col3 and df2 df ix 0 2 但我想知道是否有一种方法可以在同一切片中从数据帧的前 中 尾对列进行切片 而无需具体列出每个列 例如 一个数据框df包含列 col1 co
  • 离开范围时 Swift 在 CFRelease 中崩溃

    我刚刚投入 iOS 开发 目前在 queryServer 函数末尾的 CFRelease 函数中遇到运行时错误 我在突出显示的行上添加了注释 但没有错误如果我注释掉对 extractIPFromQuery 的函数调用 下面的代码获取服务器的
  • simple_form 和引导程序验证不起作用

    我想设置一个 创建帐户 页面 我使用的宝石是 导轨 3 2 3 简单形式 2 0 1 全方位身份验证 twitter bootstrap rails 2 0 6 蒙戈伊德 2 2 3 表格如下所示 simple form for ident
  • 在 Jenkinsfile 中运行映像时如何传递 docker 容器参数

    我有一个以以下结尾的 Dockerfile ENTRYPOINT node index js CMD help The index js可以采用几个不同的参数 我还需要公开容器的端口 因此如果我手动运行它 我会执行以下操作 docker r
  • 组在 RabbitMQ 中接收消息,最好使用 Spring AMQP?

    我正在从服务 S 接收消息 该服务将每个单独的属性更改作为单独的消息发布到实体 一个人为的例子是这样的实体 Person id 123 name Something address 如果姓名和地址在同一交易中更新 则 S 将发布两条消息 P
  • 如何获取iframe的scrollTop

    当window是iframe时 jQuery的scrollTop返回null 有谁能弄清楚如何获取 iframe 的scrollTop 吗 更多信息 我的脚本在 iframe 本身中运行 父窗口位于另一个域中 因此我无法访问 iframe
  • 将多个/不同的 MongoTemplate 与相同的 Repository 类一起使用

    我有三个不同的 mongo 数据库 相同架构 的集合 所以我为此创建了一个存储库 但是我是否可以使用不同的 mongoTemplates 一个用于三个不同的数据库 但使用相同的存储库类 我可以创建三个不同的存储库类 每个数据库一个 但我不想
  • 批处理模式下 Kafka headers 作为列表

    我试图在以批处理模式消费消息的同时访问一些标头 如果我设置监听器来处理Message data Acknowledgment ack throws SQLException for int i 0 i lt data size Object
  • React - 错误:尝试运行 npm start 时找不到模块 React

    我在尝试为 React 应用程序运行 npm start 时遇到了一个错误 我的应用程序在开发过程中基本上按照我的预期运行 但是我遇到了一个错误 需要我更新我的节点版本作为潜在的修复 我将 node 更新到 v16 13 2 并且还决定将
  • JQuery 自动完成。如果找不到项目,显示“按 Enter 键插入自动完成”?

    我正在做一种标签自动完成组合 因此 基本上 当用户输入没有自动完成选项的查询 即 aaa 时 我希望自动完成下拉并显示 按 Enter 为 aaa 创建标签 我在文档中找不到任何内容 我想这需要我进行一些黑客攻击 但在这样做之前 我想看看是
  • C# 相当于 Java 的 Exception.printStackTrace()?

    C 是否有与 Java 等效的方法Exception printStackTrace 或者我必须自己写一些东西 通过 InnerExceptions 来解决 尝试这个 Console WriteLine ex ToString From h
  • css api 的 jquery if else 条件

    我有下面的 jquery 语句 this span section1 css background url images accordion closed left png no repeat scroll 0 0 transparent
  • WPF 从 DataTrigger 调用方法

    是否可以使用通配符或调用方法来确定是否应应用 DataTrigger 我目前将 DataList 绑定到包含文件名的 IEnumerable 并且如果文件扩展名以 old 开头 我希望文件名显示为灰色 我的非工作梦想 xaml 标记看起来像
  • 返回内置类型的常量值[重复]

    这个问题在这里已经有答案了 为内置类型返回 const 值是一个好的习惯吗 原因是 const int F int y F x y 如果返回值是const 上面的代码将无法编译 然而 如果不是的话F x y 是一个非常隐蔽的错误 由于为函数