我应该写 (x == 1) 或 (1 == x) 来检查值是否等于 1 吗? [复制]

2024-03-15

我想检查一个值是否等于1。以下代码行有什么不同吗

x == 1
1 == x

...就编译器执行而言?


在大多数语言中都是一样的。

人们经常做 1 == 评估值,因为 1 不是左值。这意味着您不会意外地完成任务。

Example:

if(x = 6)//bug, but no compiling error
{
}

相反,您可以强制编译错误而不是错误:

if(6 = x)//compiling error
{
}

现在,如果 x 不是 int 类型,并且您使用的是 C++ 之类的东西,那么用户可能创建了一个运算符 ==(int) 覆盖,这使这个问题有了新的含义。在这种情况下 6 == x 不会编译,但 x == 6 可以。

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

我应该写 (x == 1) 或 (1 == x) 来检查值是否等于 1 吗? [复制] 的相关文章

  • 在未排序的数组中查找 2 个等于给定总和的数字

    我们需要在数组中找到总和等于给定值的数字对 A 6 4 5 7 9 1 2 总和 10 那么这些对是 6 4 9 1 我对此有两个解决方案 O nlogn 解决方案 使用 2 个迭代器 开始和结束 进行排序 校验和 O n 解决方案 对数组
  • 变量运算符可以吗?

    有没有办法执行类似于以下任一操作 var1 10 var2 20 var operator lt console log var1 operator var2 returns true OR var1 10 var2 20 var oper
  • 将 Eclipse 的“开放调用层次结构”过滤为仅我的公司/项目

    我最喜欢的 Eclipse 功能之一是能够打开调用者 被调用者层次结构 http eclipse tools sourceforge net call hierarchy index html的一个方法 默认情况下 该视图显示对我的代码库之
  • 您能解释一下流的概念吗?

    我知道流是字节序列的表示 每个流都提供了向其给定的后备存储读取和写入字节的方法 但流的意义何在 为什么我们与之交互的不是后备存储本身 不管出于什么原因 这个概念并不适合我 我读过很多文章 但我想我需要一个类比或其他东西 选择 流 这个词是因
  • 基于正方形瓷砖直角三角形象限的坐标系中的边界框

    我正在为游戏创建一个基于图块的 2D 地形系统 然而 我还使用游戏中的坐标 需要能够将边界框映射到 图块坐标 中 并点击边界框接触的每个图块 不用担心 有一个 kd 树和所有工作 美好的 使用定点 真实世界 坐标 我可以将每个图块计为 2
  • 在 C# 中将字符串值转换为运算符

    我正在尝试找出一种动态构建条件的方法 到目前为止 这是我的代码 var greaterThan gt var a 1 var b 2 if a Convert ToOperator greaterThan b 我确实读过这篇文章 但不知道如
  • 有没有办法获取正在运行或新打开的资源管理器窗口的 IExplorerBrowser 接口以供后续 BrowseToXXX 调用?

    这么问是因为在上一个问题 https stackoverflow com questions 6220899 answer 6221898我是指向 IExplorerBrowser 的指针 但是它创建了一个子窗口 而我想模拟资源管理器的 查
  • C++:输入和输出流运算符:结合性

    输入 输出流运算符理论上的结合性 左到右 例如 根据这个 圣玛丽大学网站 http cs smu ca porter csc ref cpp operators html 输入 输出流运算符结合性实践 include
  • 基本编程/算法概念[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我即将 与其他程序员一起 在我的高中
  • 有效地将相似的数字分组在一起[重复]

    这个问题在这里已经有答案了 可能的重复 一维数数组聚类 https stackoverflow com questions 11513484 1d number array clustering 我有一个数字数组 例如 1 20 300 4
  • 如何使PHP库松耦合? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 什么是样板代码、热点代码和热点?

    我知道这些术语是在性能实现 优化的背景下使用的 最近一直在研究这个问题 并尝试过搜索 但没有得到任何例子 清楚地阐述 描述这些概念以及在现实世界开发场景中实现这些问题 概念 有人可以彻底解释这些术语 示例场景以及可能使用这些概念和术语的地方
  • 替代位置基础系统(十六进制、八进制、二进制)如何工作?如何将它们转换为十进制?

    我以前在编程课上没有学过这一点 但现在我需要知道它 有哪些学习这些数字以及如何转换它们的好资源 我几乎会像记住乘法表一样记住这些 在我们日常的十进制系统中 基数或radix http en wikipedia org wiki Radix
  • PHP:测试三个变量是否相等

    我以前从未遇到过这种情况 但是如何测试三个变量是否相同 以下内容显然不起作用 但我想不出一种优雅 且正确 的方式来编写以下内容 if select above average select average select below aver
  • Lockfree 标准集合和教程或文章

    有人知道用于无锁常用数据类型的实现 即源代码 的好资源吗 我正在考虑列表 队列等 锁定实现非常容易找到 但我找不到无锁算法的示例以及 CAS 的工作原理以及如何使用它来实现这些结构 查看 Julian M Bucknall 的博客 他 详细
  • 什么是悲观主义?

    该问题有评论可以使用C 11的吗auto提高性能 https stackoverflow com questions 32510183 can the use of c11s auto improve performance这获得了很多选票
  • 需要帮助解决 Project Euler 问题 200 [已关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在尝试制定一个算法来解决 We
  • 包围一组点的多边形

    我有一组 S 点 2D 由 x 和 y 定义 我想找到 P 包围该组所有点的最小 含义 具有最少数量的点 多边形 P 是S 有没有已知的算法来计算这个 我在这个领域缺乏文化令人惊讶 感谢您的帮助 对于这个问题有很多算法 它被称为 最小边界框
  • 将 < 或 > 运算符作为参数传递给函数?

    我的函数里面有一个if 像这样的声明 if passedValue lt staticValue 但我需要能够传递一个参数来指示 if 表达式是像上面那样还是 if passedValue gt staticValue 但我真的无法通过 l
  • 过程式编程与 OOP 的开发成本?

    我有相当深厚的 OO 背景 OOD 和 OOP 的好处对我来说是第二天性 但最近我发现自己在一家与过程编程习惯相关的开发商店 实现语言具有一些 OOP 功能 但它们没有以最佳方式使用 更新 每个人似乎对这个话题都有自己的看法 我也是如此 但

随机推荐

  • 如何从 jpeg 文件中的 FFC4 (DHT) 标头创建霍夫曼树?

    我以为我可以自己解决这个问题 但我似乎根本没有进展 好的 背景 我需要根据 jpg 文件中的 FFC4 DHT 定义霍夫曼表 标头提供的信息创建霍夫曼代码树 DHT 标头以这种方式定义 Huffman 表 1 一系列16字节 每个字节定义有
  • Pylint变量名不符合snake_case命名风格

    我收到来自 pylint 的多个警告 如下所示 变量名 df 不符合snake case命名风格 据我所知 这是因为变量名长度小于 3 个符号 但是我想使用 df i x 等变量 因此 我需要添加几个变量名称来检查异常 我尝试将该名称添加到
  • 使用 jquery 突出显示表行

    我知道有很多关于此的帖子 但我不知道为什么我的不起作用 我试图突出显示表中的一行 tr class videorow td td tr css highlight background color a8cb17 最后是我的 jQuery j
  • 如何更改Linux中ipython/jupyter笔记本使用的默认浏览器?

    我使用的是 Linux Mint 17 3 如何更改 Jupyter Notebook 使用的默认浏览器 我已将笔记本安装为 Anaconda 3 的一部分 并在我的默认浏览器 Chrome 中打开 但出于某种原因 Chrome 不允许我创
  • 对抛出异常的控制器进行单元测试

    我有一个具有以下签名的控制器 public CustomerTypeController IHttpContextAccessor accessor IPrincipalProvider provider IMapper mapper IL
  • 在 Cypress 中如何根据名称选择输入元素?

    我开始学习Cypress 我想使用 cypress io 选择输入字段并提供电话号码 我遵循的代码但它不起作用 但是我可以使用 find 还是有其他方法让输入元素输入电话号码 cy get div contains Phone Number
  • LINQ To SQL 动态选择

    有人可以告诉我如何指示我希望在运行时从 LINQ To SQL 语句返回哪些列吗 我允许用户在复选框列表中选择项目 这些项目代表他们希望在绑定到 L2S 查询结果的网格视图中显示的列 我能够动态生成 W HERE 子句 但无法对 SELEC
  • 如何使用 cURL 从 GitHub 下载 tarball?

    我正在尝试使用以下命令从 GitHub 下载 tarballcURL http en wikipedia org wiki CURL 但它似乎没有重定向 curl insecure https github com pinard Pymac
  • 错误:属性“颜色”已定义,更新 appcompat v-7

    我正在尝试将 Android Studio 项目中的 appcompat v7 从 v20 0 0 更新到 21 0 0 以使用材料设计组件 但我总是遇到相同的错误 错误 属性 颜色 已被定义 我不知道如何修复此错误 我在互联网上搜索但无法
  • Python:如何删除['和']?

    我想删除 从一开始和 从字符串末尾开始的字符 这是我的文字 45453656565 我需要这样的文字 45453656565 我尝试过使用str replace text text replace 但它不起作用 您需要通过将不需要的字符传递
  • 为什么 main() 需要大括号?

    我尝试了几种变体 main return or main if 并得到了不同的错误 其中最奇特的是 usr lib gcc i686 linux gnu 4 4 5 lib crt1 o In function start text 0x1
  • ANDROID STUDIO 无法访问fragment_main.xml中的对象

    我有一个简单的 Android 应用程序 布局文件夹显示一个activity main xml 文件和一个fragment main xml 文件 在该fragment xml 文件中 我放置了一个名为buttonTest 的按钮
  • Watchkit 动画实现:钟面、动画图表、圆形进度条

    我看过一些潜在 Watchkit 应用程序的非常基本的演示 其中一些似乎实现了动画 示例可能是 带有移动秒针甚至分针的钟面 条形图 其中的条形会随着新的实时数据进行动画显示或形状发生变化 圆形进度条 其进度条从零到当前值进行动画处理 到目前
  • [电子邮件受保护] 适用于 iPhone5

    我想更新我的应用程序 以便可以将其部署在 iPhone 5 上 Xcode 4 5 有一个 电子邮件受保护 cdn cgi l email protection这是一个黑色图像 640X1136 在iPhone5的模拟器中 仍然加载旧的 电
  • Rspec等于法

    据我了解 equal 方法检查对象是否相同 person Person create name gt David Person find by name David should equal person 这应该是真的 但这里不是有两个不同
  • 如何执行boost.test库中指定的测试套件

    我正在使用 Boost Test 库在 C 中实现单元测试用例 假设我有两间套房 例如 BOOST AUTO TEST SUITE TestA BOOST AUTO TEST CASE CorrectAddition BOOST CHECK
  • GWT:我如何重命名我的模块

    我想将下面的模块名称从 test 重命名为testing 但是当我将其从重构更改为测试时 它说 unable to find test gwt xml 它仍在寻找以前的模块名称 我该如何解决这个问题 thanks9
  • 调整变量跟踪分配长度

    在发布版本中 我从 GCC 4 4 7 收到以下信息警告 注意 使用 fvar tracking assignments 超出变量跟踪大小限制 重试而不使用 我是否超出了变量跟踪分配支持的变量名称长度 如果是的话 有没有办法调整支持的大小
  • Scipy/Pylab 错误..预期在:动态查找?

    在 OS X 上的 python 2 7 上使用全新的 Scipy numpy matplotlib 构建 我正在尝试import pylab但它似乎不起作用 为什么是这样 我收到的错误是 gt Traceback most recent
  • 我应该写 (x == 1) 或 (1 == x) 来检查值是否等于 1 吗? [复制]

    这个问题在这里已经有答案了 我想检查一个值是否等于1 以下代码行有什么不同吗 x 1 1 x 就编译器执行而言 在大多数语言中都是一样的 人们经常做 1 评估值 因为 1 不是左值 这意味着您不会意外地完成任务 Example if x 6