std::filesystem::is_other
From cppreference.com
< cpp | filesystem
| ヘッダー <filesystem> で定義 |
||
| bool is_other( std::filesystem::file_status s ) noexcept; |
(1) | (C++17以降) |
| bool is_other( const std::filesystem::path& p ); |
(2) | (C++17以降) |
| bool is_other( const std::filesystem::path& p, std::error_code& ec ) noexcept; |
(3) | (C++17以降) |
与えられたファイル状態またはパスが、「その他 (other)」の種類のファイルに対応するかを調べる。すなわち、ファイルは存在するが、通常ファイルでも、ディレクトリでも、シンボリックリンクでもないかを確認する。
1) exists(s) && !is_regular_file(s) && !is_directory(s) && !is_symlink(s) と等価。
2,3) それぞれ is_other(status(p)) または is_other(status(p, ec)) と等価。
目次 |
[編集] 引数
| s | - | 確認するファイルステータス |
| p | - | 検査するパス |
| エラーコード | - | エラー状態を格納するためのエラーコード |
[編集] 戻り値
p で示されるファイル、または s で示される種類が、通常ファイル、ディレクトリ、シンボリックリンクのいずれでもないファイルを参照している場合は true を返し、そうでなければ false を返す。例外を投げないオーバーロードは、エラーが発生した場合に false を返す。
[編集] 例外
noexcept とマークされていないオーバーロードは、メモリ割り当てが失敗した場合に std::bad_alloc をスローする可能性があります。
2,3) OS API の呼び出しが失敗した場合、std::error_code& パラメーターに OS API のエラーコードが設定され、エラーが発生しなかった場合は ec.clear() が実行されます。
[編集] 例
| このセクションは未完成です 理由: 例がありません |
[編集] 関連項目
| (C++17)(C++17) |
ファイルの属性を決定する シンボリックリンクのターゲットを確認してファイルの属性を決定する (関数) |
| (C++17) |
ファイルの種別とパーミッションを表現する (クラス) |
| (C++17) |
ファイルステータスが既知かどうかを確認する (関数) |
| (C++17) |
指定されたパスがブロックデバイスを参照しているか確認する (関数) |
| (C++17) |
指定されたパスがキャラクタデバイスを参照しているか確認する (関数) |
| (C++17) |
指定されたパスがディレクトリを参照しているか確認する (関数) |
| (C++17) |
指定されたパスが名前付きパイプを参照しているか確認する (関数) |
| (C++17) |
引数が通常ファイルを参照しているか確認する (関数) |
| (C++17) |
引数が名前付きIPCソケットを参照しているか確認する (関数) |
| (C++17) |
引数がシンボリックリンクを参照しているか確認する (関数) |
| (C++17) |
パスが既存のファイルシステムオブジェクトを参照しているか確認する (関数) |
| ディレクトリエントリが*その他の*ファイルを参照しているかどうかを確認します ( std::filesystem::directory_entry の公開メンバ関数) |