C++ 0xには、error_category
のオブジェクトが2つあります(generic_category()
およびsystem_category()
)。私が今まで理解しているところでは、オペレーティングシステムから返されたエラーにはsystem_category()
を使用し、に対応するstd::errc
にある一般的な値にはgeneric_category()
を使用する必要があります。Unixでは、errnoにsystem_categoryまたはgeneric_categoryを使用する必要がありますか?
しかし、errno
の値がの場合は、オペレーティングシステムによってエラーが返されます。 system_category()
(非UNIX系のシステムでは、#ifdef
が必要)や、generic_category()
(標準でないerrno
のUnixライクなシステムでは間違っている)を使うべきでしょうか?
回答を読み終えたら、私はまだ何を使用するのか不明です。 – robert