我有一个关于埃菲尔常数的问题。嗯,这只是一个语义问题,但它已经困扰我一段时间了,我只是不理解这个专业的概念。
对于正常作业,你使用:=
,这在数学思维中是完全有意义的,因为它是作业的数学符号
但是如果我们看一下常数的定义:
feature
some_constant: INTEGER = 5
我只是不明白为什么我们在那里使用等号。有某种原因吗?我会通过以下方式理解它:我们将值5分配给常量但是为什么是布尔表达式?
我希望有人可以解释这个
背后的概念答案 0 :(得分:1)
您必须将=
符号视为常量功能的快速合约。
foo: INTEGER = 5
与
相同foo: INTEGER
ensure
Result = 5
请注意,这是最近的语法更改,之前是
foo: INTEGER is 5
但是Eiffel规范完全删除了is
个关键字。