141

Delphi 2009 では、SysUtils.pas の 425 行目に次の内容が含まれています。

EProgrammerNotFound = class(Exception);
  • これは単なるイースターエッグですか、それとも何か深刻なことですか?
  • この例外はいつ発生する必要がありますか?
  • Delphi Prism や Free Pascal にも存在しますか?

Q: この例外クラスは Delphi (現在 XE7) でも宣言されていますか? A: はい、文書化されています。

ソフトウェアの障害を示す非標準的な方法。

代わりに EProgrammerNotFound を使用して、実行時に検出されたソフトウェア障害を示すことができます。

4

8 に答える 8

160

それは長い一日の結果であり、私たちは少し目がくらむようになりました. 何年もの間 (私がチームに参加して以来)、コンパイラーのエラー メッセージを、最も一般的なエラーの 1 つに置き換えて、同様のメッセージに置き換えることについて常に冗談を言っていました。社内では、さまざまなことや人々 (主にチーム自体) に対して、常に冗談を言ったりからかったりしてきました。ユーモアのセンスがなければ、早死にする運命にあります。

それは簡単な会話でした。

「ああ、その関数で EProgrammerNotFound 例外を発生させるべきでした。」
「LOL! その例外を追加して、誰が気付くかを確認する必要があります。」
「なぜそこにあるのかについて、どれだけの憶測があるのだろうか?」

だから、私が言えることは、「あなたはすべて私たちの手に正しくプレーしました;-)...ブワハハハ!pwned!」としか言えません。

于 2010-01-18T19:37:36.377 に答える
24

これは、プログラマがexeファイルにリンクする必要がある「fix-inline」テクノロジーと組み合わせて使用​​ されます;-)

于 2010-01-18T07:47:09.017 に答える
21

これは Delphi 2009 で導入され、Delphi 2010 にも存在し、最近インターネットで注目を集めまし

「 EBCAK」(椅子とキーボードの間のエラー)に似たイースターエッグであり、Delphi バージョン番号 13 のスキップだと思います。

EProgrammerNotFound

  • SysUtils ユニットの Win32 ブランチで宣言されていますが、RTL または VCL のどこでも使用されていません
  • Delphi Prism には存在しません
  • Delphi 2009 で導入されたため、VCL.NET には存在しません
  • 現在 (バージョン 3.5) .NET フレームワークに似たものはありません (理由はわかりませんが、これらの人にはユーモアがあります)

EProgrammerNotFound が実際に使用されることを意図しているとはまったく思いませんが、そこにあるので、人々は冗談めかしてそれを使用します (他の誰かのソースコードに "const False = True; True = not False;" を迷子にするようなものです)。

--jeroen

于 2010-01-18T08:39:58.450 に答える
5

これは、コンパイラの「構文エラー: プログラマーが期待する」の実行時の類似物です。;>

于 2011-04-24T00:28:27.993 に答える
0

私はプログラマーですが、例外ですか?

Marco Cantù も、彼の著書「Delphi 2009 ハンドブック」の 242 ページでこれについて説明しています。彼は、VCL ソース コードでは決して使用されていないと述べています。

于 2010-01-18T08:33:56.900 に答える