我不熟悉合并运算符 - 我只是想知道Python的用法究竟是什么。
就我而言,合并运算符是 blender 或 merger 运算符,它将不同的表达式结果组合成唯一值。
Python中的此表达式求值为"some value"
:
value = True and "some value"
这个是False
:
value = False and "some value"
我可以使用一些表达式来评估,而不是直接使用bool,但是在静态类型语言中,比如C ++,这是行不通的 - 除非使用模板,我想。
我的问题是:是否有支持coalescing operators
的静态类型语言,或评估表达式问题这些语言不支持此功能的原因?
只是为了添加一些上下文,我最近一直试图在C ++中操作那些接近这些表达式的东西,但它总是会出现expected primary-expression before
错误 - 从我推断的问题出现在语言中打字方法。
答案 0 :(得分:0)
简而言之,没有。
C ++不是Python(或PHP或其他一些“更高级别的语言”)。在Python中,变量可以从包含布尔值变为包含字符串到包含浮点数。在C和C ++中,声明变量包含特定类型。您可以通过多种方式在同一结构中存储不同类型,例如“Boost :: variant”,它做了类似于Python内部工作的东西 - 它在数据结构中有一个“这个变量是什么类型”。