4

含意:ステートメントA IMP Bは、論理ステートメント「IfAThenB」と同等です。AがTrueでBがFalseの場合にのみ、IMPBはFalseになります。それ以外の場合はすべて真です。

http://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec09d55-7ffc.html

大学からの「含意」とは何かを漠然と覚えています。実世界でIMP演算子を使用するのはいつですか?

4

3 に答える 3

1

現実の世界では、オプションのパラメーターで検証を実行するために、次のようなことができると便利です。

<cfif structKeyExists(URL, "a") IMP validateId(URL.a)>

ここで、URL.a が存在する場合の検証のみを考慮します。それは、IMP の最も有用なアプリケーションである IMO に関するものです (そうですね)。

ただし、IMP の実装のバグにより、これは機能しません :-(

短縮されたバージョンよりもはるかに長い (そして正しくない) ロジックが読みやすいという Dale の主張は、自明のことであり、怪しい前提に基づいていると思います。彼の立場は、「何かを知らない人」は継続的な状態であるという考えに基づいています。つまり、誰かが何かを知らない場合 (「IMP」の意味など)、その人はそれを永遠に知りません。本当じゃない。人は最初は何も知らないかもしれませんが、一度それについて知ると、それについて知るようになります. したがって、IMP オレーターがどのように機能するかを知らないという問題は、非常に短命です。

IMP が必要になる状況はあまり発生しないと思いますが、あると便利です。そして、それが適切に機能すれば、さらに便利になります;-)

于 2011-11-08T09:12:35.680 に答える
0

私はあなたがそれを避けるべきだと思う. 他の開発者は、それが何を意味するのかほとんど理解できません。

むしろ書きたい

<cfif a eq true and b eq false>

よりも

<cfif a imp b>

最初のものはより明確です。

于 2011-11-07T23:34:33.693 に答える