我在一本书中已经读过它,但是根本没有解释。我也从未在程序中看到它。是Prolog语法的一部分吗?这是为了什么?你会用吗?

最佳答案

它代表着含义。仅当左侧为true时,才执行右侧。因此,如果您有此代码,

implication(X) :-
  (X = a ->
    write('Argument a received.'), nl
  ; X = b ->
    write('Argument b received.'), nl
  ;
    write('Received unknown argument.'), nl
  ).

然后它将根据其参数编写不同的内容:
?- implication(a).
Argument a received.
true.

?- implication(b).
Argument b received.
true.

?- implication(c).
Received unknown argument.
true.

(link to documentation。)

关于operators - 什么是Prolog中的->运算符,该如何使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1775651/

10-09 15:55