0

この質問は技術的なものというよりは哲学的なものなので、何が起こっているのかという厄介な詳細を意図的に省略しても構わないと思います.

私は特定のプロトコル用のサーバーを実装するチームに属しています。クライアントからのエラー (たとえば、開く前に読み取りを要求する) とプログラミング エラー (たとえば、初期化されていないファイルを渡す) を区別する方法について議論がありました。ファイルシステムまで処理します)。このプロトコルには、クライアントにエラーを返すメカニズムがあります。残念ながら、プロトコル コードは内部エラー コードとうまく一致しません。

これまでのところ、ヘルパー関数に出入りするたびに 2 つの異なるエラー コードを維持し、戻るたびに両方をチェックしてきましたが、これは面倒で洗練されていないように思われるため、エラー システム全体のリファクタリングを検討しています。

インターネットの皆さんへの私の質問は、過去にこの問題にどのように対処しましたか? まだ出くわしていない、並列エラー コードを処理する美しく標準的な方法はありますか?

ストレート C で作業しているため、問題を解決するために例外を使用したり、エラー クラスの階層を構築したりすることはできません。

ありがとう、

――ダン

4

1 に答える 1