Questions tagged «comparison-operators»

24
如何检查字符串是否为空?
Python是否有类似空字符串变量的内容,您可以在其中执行以下操作: if myString == string.empty: 无论如何,检查空字符串值的最优雅方法是什么?我""每次都很难检查空字符串,因此很难进行编码。



5
“!==”和“ ==!”之间的区别 [关闭]
这个问题不太可能对将来的访客有所帮助;它仅与较小的地理区域,特定的时间段或极为狭窄的情况(通常不适用于Internet的全球受众)有关。要获得使该问题更广泛适用的帮助,请访问帮助中心。 7年前关闭。 昨天,当我修改别人编写的PHP代码时,偶然发现了这个问题。我很困惑,一个简单的比较(if ($var ==! " "))未能按预期工作。经过一些测试,我意识到编写该代码的人将使用它==!而不是!==用作比较运算符。我从没看过==!任何语言,所以我想知道这段代码怎么能工作并进行了一些测试: <?php echo "int\n"; echo "1 !== 0: "; var_dump(1 !== 0); echo "1 !== 1: "; var_dump(1 !== 1); echo "1 ==! 0: "; var_dump(1 ==! 0); echo "1 ==! 1: "; var_dump(1 ==! 1); echo "bool\n"; echo "true !== false: "; var_dump(true …

4
是否正确定义了“ false <true”操作?
C ++规范是否定义: 布尔参数是否存在“小于”运算符,如果存在, 4个参数排列的结果? 换句话说,规范定义了以下操作的结果吗? false &lt; false false &lt; true true &lt; false true &lt; true 在我的设置(Centos 7,gcc 4.8.2)上,下面的代码显示了我期望的结果(给定C将false表示为0,将true表示为1的历史): false &lt; false = false false &lt; true = true true &lt; false = false true &lt; true = false 虽然我可以肯定大多数(所有?)编译器都将提供相同的输出,但是C ++规范是否对此做了规定?还是允许混淆但符合规范的编译器确定true小于false? #include &lt;iostream&gt; const char * s(bool a) { …

1
在TWIG中找到字符串中的子字符串
我想使用Twig查找字符串的子字符串或检查是否没有这样的子字符串。在单词上,我需要在PHP中使用“ strstr”或“ strpos”的类似物。我用谷歌搜索并在stackoverflow中搜索了此问题,但未找到任何结果。有人知道如何解决这个问题吗?

8
在C ++中比较结构时找不到==运算符
比较以下结构的两个实例,我收到一个错误: struct MyStruct1 { MyStruct1(const MyStruct2 &amp;_my_struct_2, const int _an_int = -1) : my_struct_2(_my_struct_2), an_int(_an_int) {} std::string toString() const; MyStruct2 my_struct_2; int an_int; }; 错误是: 错误C2678:二进制'==':未找到采用类型为'myproj :: MyStruct1'的左侧操作数的运算符(或没有可接受的转换) 为什么?

2
为什么对于许多标准库类型在C ++ 20中删除了operator!=?
根据cppreference,std::type_info::operator!=被C ++ 20删除,但是std::type_info::operator==显然仍然存在。 背后的原因是什么?我可能同意比较不平等是没有意义的,但是比较相等也同样是没有意义的,不是吗? 同样,operator!=在许多其他标准库类型中,包括容器,例如std::unordered_map::operator!=和,std::unordered_set::operator!=将根据cppreference在C ++ 20中将其删除。 相比之下,必须编写if(!(id1 == id2))并不会使任何代码更清晰if(id1 != id2),相反,相反……
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.