相关疑难解决方法(0)

为什么在C#中经常会看到"null!= variable"而不是"variable!= null"?

在c#中,您说明条件的顺序的执行速度是否有任何差异?

if (null != variable) ...
if (variable != null) ...
Run Code Online (Sandbox Code Playgroud)

从最近开始,我经常看到第一个,因为我习惯了第二个,所以引起了我的注意.

如果没有差异,第一个的优势是什么?

c# coding-style

100
推荐指数
5
解决办法
3万
查看次数

如何检查等于?(0 == i)或(i == 0)

好的,我们知道以下两行是等价的 -

  1. (0 == i)
  2. (i == 0)

此外,过去鼓励使用第一种方法,因为如果您不小心使用'='而不是'==',那么编译器就会给出错误消息.

我的问题是 - 在今天的一代漂亮的IDE和智能编译器中,你还推荐第一种方法吗?

特别是,当我看到以下代码时,这个问题突然出现在我脑海中 -

if(DialogResult.OK == MessageBox.Show("Message")) ... 
Run Code Online (Sandbox Code Playgroud)

在我看来,我绝不会推荐上述内容.任何第二意见?

c c++ coding-style

22
推荐指数
8
解决办法
9138
查看次数

在PHP中首先使用null有什么好处吗?

可能重复:
为什么一些有经验的程序员会在变量之前写入比较值?

我只是对此感到好奇:在我研究过的大多数框架/开源项目中,我经常看到这样的代码......

<?php

if (null === self::$_instance) {
    self::$_instance = new self();
}
Run Code Online (Sandbox Code Playgroud)

特别是这条线......

if (null === self::$_instance) {
Run Code Online (Sandbox Code Playgroud)

为什么nullif声明的第一个参数中使用而不是相反?...

if (self::$_instance === null) {
Run Code Online (Sandbox Code Playgroud)

我意识到可能没有性能提升或类似的东西.这只是一种偏好还是我忽略了某种编码标准?

php syntax

12
推荐指数
2
解决办法
846
查看次数

==运算符和操作数

我想检查一个值是否等于1.以下代码行是否有任何区别

评估值== 1

1 ==评估价值

在编译器执行方面

equality operators

5
推荐指数
4
解决办法
810
查看次数

我应该检查一个对象是第一个还是第二个?

比如说我创造了一只鸭子

Duck myDuck = DuckFactory.CreateDuck();
Run Code Online (Sandbox Code Playgroud)

在过去,我总是检查myDuck是否为空

if (myDuck == null)
{
  // Do stuff
}
Run Code Online (Sandbox Code Playgroud)

我最近查看了一些首先检查null的代码.

if (null == myDuck)
{
   // Do stuff
}
Run Code Online (Sandbox Code Playgroud)

在我看来,这些是相同的,但这两者之间有什么不同吗?一个人对另一个人有任何表现上的好处吗?是否有建议的最佳做法来检查对象是否为空?

c#

5
推荐指数
1
解决办法
1945
查看次数

c ++中的字符串比较

C++有什么区别(x == "x")("x" == x)比较?让我们说x是一个std::string.有什么理由为什么人会优先于另一个?

c++

3
推荐指数
1
解决办法
482
查看次数

PHP为什么(null === $ variable)而不是($ variable === null)比较?

阅读Symfony2代码时,我多次遇到这个比较

if (null === $variable ) { ... }
Run Code Online (Sandbox Code Playgroud)

我用

if ($variable === null ){ ... }

因为我觉得它更具可读性.

使用第一种符号背后有智慧吗?

php

1
推荐指数
1
解决办法
285
查看次数


标签 统计

c++ ×3

c ×2

c# ×2

coding-style ×2

php ×2

equality ×1

operators ×1

syntax ×1